python字符串
字符串可以用' '
或者" "
括起来表示
如果字符串本身包含'
怎么办?比如我们要表示字符串 I'm OK
,这时,可以用" "
括起来表示
"I'm OK"
类似的,如果字符串包含"
,我们就可以用' '
括起来表示
'Learn "Python" in imooc'
如果字符串既包含'
又包含"
这个时候,就需要对字符串中的某些特殊字符进行“转义”,Python字符串用\
进行转义
要表示字符串Bob said "I'm OK"
由于'
和"
会引起歧义,因此,我们在它前面插入一个\
表示这是一个普通字符,不代表字符串的起始,因此,这个字符串又可以表示为
'Bob said \"I\'m OK\".'
转义字符 \
不计入字符串的内容中
常用的转义字符还有:
\n
表示换行\t
表示一个制表符\\
表示 \
字符本身
python中raw字符串与多行字符串中raw字符串与多行字符串
如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀r
,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:
r'\(~_~)/ \(~_~)/'
但是r'...'
表示法不能表示多行字符串,也不能表示包含'
和 "
的字符串
如果要表示多行字符串,可以用'''...'''
表示:
上面这个字符串的表示方法和下面的是完全一样的
还可以在多行字符串前面添加r
,把这个多行字符串也变成一个raw字符串
Python的字符串format
字符串是Python程序重要的数据类型,到目前为止,我们输出的字符串的内容都是固定的,但有时候通过字符串输出的内容不是固定的,这个时候需要使用format来处理字符串,输出不固定的内容
字符串format由两个部分组成,字符串模板和模板数据内容组成,通过大括号{}把
模板数据内容嵌到字符串模板对应的位置
如果模板中{}
比较多,则容易错乱,那么在format的时候也可以指定模板数据内容的顺序。
指定顺序
调整顺序
除了使用顺序,还可以指定对应的名字,使得在format过程更加清晰
python的字符串编程
pthon3的编码
在python3中,默认使用UTF-8 Unicode来进行编码,因此我们可以在python中输入任意形式的Unicode字符串,都不会遇到像python2中遇到的问题(在python2中,需要显式指明该字符串是Unicode字符串),如果没有了解过python2,则完全可以忽略这一点,python3提供了更加简单易懂的编码方式
python的字符串切片
字符串由一个个字符组成,每一个字符都有一个唯一的位置。比如字符串'ABC'
,第一个字符是A
,第二个字符是B
,第三个字符是C
使用位置的方式取出字符串中特定位置的字符,按照位置取字符串的方式使用中括号[]
访问,这个时候可以把字符串看作是一个列表
要获取字符串中的一部分就要用到采取切片的方式
切片需要在中括号[]
中填入两个数字,中间用冒号分开,表示子串的开始位置和结束位置,并且这是半闭半开区间,不包括最后的位置
例:
从字符串'AABCDEFGHHIJ'中,使用切片的方式取出'ABCDEFGH