【Python CheckiO 题解】Between Markers (simplified)
CheckiO 是面向初學者和高級程序員的編碼游戲,使用 Python 和 JavaScript 解決棘手的挑戰和有趣的任務,從而提高你的編碼技能,本博客主要記錄自己用 Python 在闖關時的做題思路和實現代碼,同時也學習學習其他大神寫的代碼。
CheckiO 官網:https://checkio.org/
我的 CheckiO 主頁:https://py.checkio.org/user/TRHX/
CheckiO 題解系列專欄:https://itrhx.blog.csdn.net/category_9536424.html
CheckiO 所有題解源代碼:https://github.com/TRHX/Python-CheckiO-Exercise
題目描述
【Between Markers (simplified)】:這個是Between Markers任務的簡化版本,給定一個字符串和兩個標記字符(第一個和最后一個標記),找到兩個標記符之間包含的子字符串。初始標記和結束標記始終不同,初始標記和結束標記的大小始終為1個字符,初始標記和結束標記始終存在于字符串中。
【鏈接】:https://py.checkio.org/mission/between-markers-simplified/
【輸入】:三個參數,都是字符串,第二個和第三個參數是初始標記和結束標記
【輸出】:字符串
【范例】:
between_markers('What is >apple<', '>', '<') == 'apple'解題思路
利用 find() 方法查找原字符串中是否有標記字符,注意,由于 find() 方法會返回字符串出現的索引位置,而要提取標記字符之間的字符串,初始標記的位置就要加上它的長度,本題中,其長度始終為 1,所以只加 1 即可,最后利用切片,返回初始標記和結束標記之間的字符串即可。
代碼實現
def between_markers(text: str, begin: str, end: str) -> str:"""returns substring between two given markers"""start = text.find(begin) + 1finish = text.find(end)return text[start:finish]if __name__ == '__main__':print('Example:')print(between_markers('What is >apple<', '>', '<'))# These "asserts" are used for self-checking and not for testingassert between_markers('What is >apple<', '>', '<') == "apple"assert between_markers('What is [apple]', '[', ']') == "apple"assert between_markers('What is ><', '>', '<') == ""assert between_markers('>apple<', '>', '<') == "apple"print('Wow, you are doing pretty good. Time to check it!')大神解答
def between_markers(text: str, first: str, second: str) -> str:"""returns substring between two given markers"""return text[text.find(first) + 1: text.find(second)]總結
以上是生活随笔為你收集整理的【Python CheckiO 题解】Between Markers (simplified)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hexo 双线部署到 Coding Pa
- 下一篇: IMF再次出手,美国GDP只会下降4.3