str:字符序列类型
(参考标准库手册4.7节)

字符串类型 str 也是一种序列类型,字符串对象是不可变序列,其元素是 Unicode "字符"(称为 "Unicode code point",Unicode 代码点)。

如前所述,字符串字面量可以采用单引号写法,双引号写法,以及单/双引号的三字符序列写法来描述。

采用单个引号做字符串括号,字符串里不能包含实际的换行;而采用三个引号的序列做字符串括号,写出的字面量可以延续任意多个行,其中出现的所有空白字符(包括换行符)都将被看作是这个字符串的内容。此外,如果两个(或者多个)字符串字面量之间只有空白字符,它们将被自动连接成一个字符串。

有关字符串字面量的写法和所有特殊字符的写法请参考 Python 语言参考手册 2.4.1 节和前面介绍。

用类型名 str(…) 可以把其他对象转换成字符串。不但整数、浮点数、复数有字符串形式(即为程序里写相应字面量的形式),其他许多类型的对象也有字符串形式。如果被转换对象没有字符串形式,转换返回空串。

所有非变动序列操作都可以用于对字符串。但要注意,由于 Python 没有字符类型(只有字符串类型),对字符串做取元素操作时,得到的是值包含一个字符的串。也就是说,如果 s 是字符串,那么 s[0] 和 s[0 : 1] 的结果一样,s[1] 和 s[1 : 2] 的结果也一样。

两个字符串可以比较相等或不等,也可以比较大小。比较的方式与前面介绍的序列比较相同,大小比较也按照所谓的 "字典序" 进行。

str 类型还提供了一大批专门用于字符串的操作,有关情况见标准库手册 4.7.1 节。

注:如果 s 是字符串,list(s) 将得到一个表,其元素按顺序是 s 里的各个字符做成的单个字符的串。例如,list('abbacb') 将得到 ['a', 'b', 'b', 'a', 'c', 'b']。

本页及相关页面(除另声明者外)由裘宗燕创建维护,可自由用于各种学习活动。其他使用需得到作者许可。