Python:查找字符串中字符的值

15

给定一个长字符串,例如:

"fkjdlfjzgjkdsheiwqueqpwnvkasdakpp"
或者
"0.53489082304804918409853091868095809846545421135498495431231"
如何找出字符串中第n个字符的值?如果可以将其转换为列表(每个数字都有自己的索引),我就可以解决这个问题。但是由于数字之间没有用逗号分隔,我不知道该怎么做。
据我所知,没有像 string.index(10) 这样的命令可以返回第11个字符。

3
字符串与列表一样可以通过索引访问。myString[5]将返回第六个字符。此外,如果出于某种原因你想将其转换为列表,list(myString)将按照你提到的方式创建一个列表。 - Josiah
1
如何使用 a[n] 获取第 n 个字符? - hochl
字符串和列表都是使用数组实现的。 - jamylak
1
你应该仔细阅读Python教程http://docs.python.org/tutorial/,因为它可以回答很多这些问题。特别是http://docs.python.org/tutorial/introduction.html#strings将告诉你有关字符串下标和切片的所有内容。 - Duncan
同时,my_str.index('c')是一个方法,可以找到子字符串的索引。 - jamylak
显示剩余2条评论
3个回答

26

字符串就像列表一样。因此,您可以以相同的方式访问它们。

>>> a = "fkjdlfjzgjkdsheiwqueqpwnvkasdakpp"
>>> print a[10]
k

5

字符串可迭代且可索引(因为它是序列类型),因此您可以直接使用以下代码:

"fkjdlfjzgjkdsheiwqueqpwnvkasdakpp"[10]

2

要获取第 nth 个值对应的字符,只需使用以下函数:

def getchar(string, n):
    return str(string)[n - 1]

示例用法:

>>> getchar('Hello World', 5)
'o'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接