猿问

如何获得字符在Python中的位置?

如何在python中的字符串中获取字符的位置?



慕无忌1623718
浏览 1488回答 3
3回答

皈依舞

这有两个String的方法,find()和index()。两者之间的区别在于找不到搜索字符串时会发生什么。 find()回报-1 和index()加薪ValueError。使用 find()>>> myString = 'Position of a character'>>> myString.find('s')2>>> myString.find('x')-1使用 index()>>> myString = 'Position of a character'>>> myString.index('s')2>>> myString.index('x')Traceback (most recent call last):&nbsp; File "<stdin>", line 1, in <module>ValueError: substring not found从Python手册string.find(s, sub[, start[, end]])返回s中找到子字符串sub的最低索引,以使sub完全包含在中s[start:end]。-1失败返回。开始和结束以及负值的解释的默认值与切片相同。和:string.index(s, sub[, start[, end]])喜欢,find()但是ValueError在找不到子字符串时提高。

陪伴而非守候

仅出于完整性考虑,如果需要查找字符串中字符的所有位置,可以执行以下操作:s = 'shak#spea#e'c = '#'print [pos for pos, char in enumerate(s) if char == c]这将返回 [4, 9]

子衿沉夜

>>> s="mystring">>> s.index("r")4>>> s.find("r")4“长ed”方式>>> for i,c in enumerate(s):...&nbsp; &nbsp;if "r"==c: print i...4得到子串,>>> s="mystring">>> s[4:10]'ring'
随时随地看视频慕课网APP

相关分类

Python
我要回答