每天三分钟,我们一起学python。在上一期python基本数据类型——数字中,我们学习了python的基本数据类型——数字,但是只有数字是远远不够的,我们还需要输出或者输入一些文字来进行表达,所以就需要用到字符串来进行记录实现了,今天我们就来学习另一种基本数据类型——字符串。
1.你可以使用单引号('…… ')来指定字符串, 例如 '每天三分钟,一起学python' 或 'Three minutes a day, we learn python together' 。所有引号内的空间, 像空格与制表符, 都将按原样保留。需要注意的是:单引号引起来的可以内嵌'双引号'的字符串。
2.使用双引号和使用单引号完全相同,例如'每天三分钟,一起学python'或 'Three minutes a day, we learn python together' 。需要注意的是:双引号引起来的可以内嵌'单引号'的字符串。
>>> 'Three minutes a day, we learn python together''Three minutes a day, we learn python together'>>> 'Three minutes a 'day', we learn python together' #双引号内嵌单引号'Three minutes a 'day', we learn python together'
3.可以使用三引号('''......''')来指定字符串,例如'''每天三分钟,一起学python'''或'''Three minutes a day, we learn python together'''。需要注意的是:三引号字符串可以分成多行来写,多行之间的空白(包括换行符、空格、Tab键)都是字符串的一部分。三引号引起来的可以内嵌单引号或者双引号字符串。
在交互式解释器中,输出的字符串外面会加上引号,特殊字符会使用反斜杠来转义。虽然有时这看起来会与输入不一样(外面所加的引号可能会改变),但两个字符串是相同的。如果字符串中有单引号而没有双引号,该字符串外将加双引号来表示,否则就加单引号。 print() 函数会生成可读性更强的输出,即略去两边的引号,并且打印出经过转义的特殊字符:
>>> ''Isn\'t,' she said.'''Isn\'t,' she said.'>>> print(''Isn\'t,' she said.')'Isn't,' she said.>>> s = 'First line.\nSecond line.' # \n 意味着新行>>> s # 不使用 print(), \n 包含在输出中'First line.\nSecond line.'>>> print(s) # 使用 print(), \n 输出一个新行First line.Second line.
如果你不希望前置了 \ 的字符转义成特殊字符,可以使用 原始字符串方式,在引号前添加 r 即可:
在使用三引号时,换行符不需要转义,它们会包含在字符串中。下面的例子使用了一个转义符,避免在最开始产生一个不需要的空行。
>>> print('''第一行,不使用转义符,前面有空行第二行第三行''')第一行,不使用转义符,前面有空行第二行第三行>>> print('''\第一行,使用转义符,前面没有空行第二行第三行''')第一行,使用转义符,前面没有空行第二行第三行
1.你可以用 + 将字符串进行连接(粘到一起),也可以用 * 进行重复。
2.相邻的两个或多个 字符串字面值(引号引起来的字符)将会自动连接到一起。
>>> '有趣技术''交流分享''有趣技术交流分享'
3.字符串是可以被索引(下标访问)的,第一个字符索引是 0。单个字符并没有特殊的类型,只是一个长度为一的字符串。
4.索引也可以用负数,这种会从右边开始数,因为-0和0是相同的,所有负数索引是从-1开始的。
>>> word = '有趣技术交流分享'>>> word[-1]'享'>>> word[-5]'术'
5.除了索引,字符串还支持 切片。索引可以得到单个字符,而 切片可以获取子字符串。注意切片的开始总是被包括在结果中,而结束不被包括。
切片的索引有默认值;省略开始索引时默认为 0,省略结束索引时默认为到字符串的结束。
>>> word = '有趣技术交流分享'>>> word[:3]'有趣技'>>> word[3:]'术交流分享'>>> word[-3:]'流分享'
需要注意,使用过大的索引会产生一个错误。
但是,切片中的越界索引会被自动处理。
>>> word = '有趣技术交流分享'>>> word[2:16]'技术交流分享'>>> word[16:]''
6.还可以使用内置的函数len()来返回一个字符串的长度。
联系客服