Skip to content

访问字符串中的字符

Python 字符串是“不可变的”,即对象的状态(值)在创建后不能修改。

使用标准的 [ ] 语法和零基索引,可以访问字符串中的字符。

如果 s = "hello"

  • s[0] 将得到 h
  • s[2] 将得到 l
  • s[5] 将导致 IndexError: string index out of range,因为字符串长度为 5(索引 04
  • s[2] = 'p' 将导致 TypeError: 'str' object does not support item assignment,因为 s 是不可变的

Python 还支持负索引,即你可以从右到左访问字符串的值。

索引 -1 表示字符串的最后一个字符,-2 是倒数第二个字符,依此类推。

如果 s = "hello"

  • s[-1] 将得到 o
  • s[-4] 将得到 e
  • s[-6] 将导致 IndexError: string index out of range,因为字符串长度为 5(负索引 -1-5

字符串长度

内置函数 len() 返回字符串的长度,这在字符串遍历或其他字符串操作中很有用。

python
>>> len("hello")
5

>>> s = "sample text"
>>> len(s)
11

>>> p = "python"
>>> l = len(p)
>>> p[l-1]
'n'