开发者学堂课程【Python 语言基础 1 :语法入门:字符串简介】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/599/detail/8665
字符串简介
字符串用来表示一段文本信息,字符串是程序中使用的最多的数据类型
l 基本规则:
在 Python 中字符串需要使用引号引起来
比如输入:
s = 'hello'
print(s)
再比如输入s = abc
所以字符串必须使用引号引起来,不使用不是字符串。引号可以是双引号,也可以是单引号
比如输入:
s = 'hello'
s = "hello”
print(s)
这两者没有任何区别,但是注意不要混着用
比如输入:
s = 'hello”
print(s)
结果报错,所以引号不能混合使用 SyntaxError: EOL while scanning string literal
此外,相同的引号之间不能嵌套
比如输入:
s =“子曰:“学而时习之,乐呵乐呵
!"
但是换成 s ='子曰:"学而时习之,乐呵乐呵!"',将外面的双引号换成单引号,结果如下
l 长字符串
比如输入:
s ='锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦'
print(s)
但是如果想换成诗的格式,想换行,比如输入:
s ='锄禾日当午,
汗滴禾下土,
谁知盘中餐,
粒粒皆辛苦'
print(s)
结果会报错,注意:单引号和双引号不能跨行使用,需要在分段后面加\,比如输入:
s ='锄禾日当午,\
汗滴禾下土,\
谁知盘中餐,\
粒粒皆辛苦'
print(s)
但是我们发现还是没有实现换行效果,其实这是单引号双引号一个缺点,虽然加\,但是没有换行的功能,这个时候我们就使用三重引号来表示一个长字符串,就是三个单引号'''或者是三个双引号 " " "
三重引号的特点是可以换行,并且会保留字符串中的格式
比如输入:
s ='''锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦'''
print(s)
效果是一样的,但是如果我们输入以下
s ='''锄禾日当午,
汗滴禾下土,
谁知盘中餐,
粒粒皆辛苦'''
print(s)
l 转义字符
在以上内容中,若想用内外都是双引号来实现 s =“子曰:“学而时习之,乐呵乐呵!""结果,就可以使用\作为转义字符,通过转义字符,可以在字符串中使用一些特殊的内容
比如输入:
s ="子曰:\"学而时习之,乐呵乐呵!\""
print(s)
转义字符中
\' 表示'
\" 表示"
\t 表示制表符
\n 表示换行符
\\ 表示反斜杠
\uxxxx 表示 Unicode 编码
接下来输入 s ="子曰:\"学而时习之,\t乐呵乐呵!\""
相当于在键盘上按了 table 键,而 \ n 呢?s ="子曰:\"学而时习之,\n乐呵乐呵!\""
如果想单纯打出\,我们输入s ="子曰:\"学而时习之,\\n乐呵乐呵!\""
s= '\u0040'
输入 s= '\u0050'