1.简介
字符串是Python序列类型,它本质是字符序列。Python字符串是不可变的,无法对原字符串进行修改,但可以将字符串的一部分复制到新字符串,来达到相同的修改效果。
对Unicode的支持使得Python3可以包含世界上任何书面语言以及特殊符号。对于Unicode的支持是Python3从Python2分离出来的重要原因之一。
2.创建字符串
使用引号创建
将一系列字符包裹在一对单引号或一对双引号中即可创建字符串
>>> 'python'
'python'
>>> "python"
'python'
>>>
交互式解析器输出的字符串永远是单引号包裹的,无论使用哪种引号,Python对字符串的处理方式都是一样的,没有任何区别
既然如此,为什么要使用两种引号呢?
这么做的好处就是可以创建本身就包含引号的字符串,而不用使用转义字符。可以在双引号包裹的字符串中使用单引号,或者在单引号包裹的字符串中使用双引号
还可以使用连续三个单引号''',或者三个双引号"""创建字符串,即三元引号,用于创建多行字符串。
使用str()进行类型转换
3.打印
print()函数的输出与交互式解释器的自动相应输出存在一些差异:print()会把包裹字符串的引号截取,紧输出实际内容,易于阅读。还会自动地再各个输出部分之间添加空格,并在所有输出的最后添加换行符。
>>> '''
... I do not like three,Doctor Fell.
... The reason why,I cannot tell.
... But this I know,and know full well:
... I do not like three,Doctor Fell
... '''
'\nI do not like three,Doctor Fell.\nThe reason why,I cannot tell.\nBut this I know,and know full well:\nI do not like three,Doctor Fell\n'
test_str='''
I do not like three,Doctor Fell.
The reason why,I cannot tell.
But this I know,and know full well:
I do not like three,Doctor Fell
'''
print(test_str)
I do not like three,Doctor Fell.
The reason why,I cannot tell.
But this I know,and know full well:
I do not like three,Doctor Fell
使用+拼接
再Python中,可以使用+将多个字符串或字符串变量拼接起来:
>>> 'a'+'b'
'ab'
也可以直接将一个字面字符串(非字符串变量)放到另一个的后面直接实现拼接:
>>> 'a''b'
'ab'