文章目录
一、字符串表达方式
1.普通字符串:用单引号 ’ ’ 或 双引号" " 括起来的字符串
- 转义符:
2.原始字符串:
r ’ Hello\n World’ 或 r " Hello\n world " 其中单双引号里的内容均为原意。
3.长字符串:
三个单引号或者三个双引号。
>>>s = """
《早发白帝城》
朝辞白帝彩云间,千里江陵一日还。
两岸猿声啼不住,轻舟已过万重山。
"""
>>> print(s)
《早发白帝城》
朝辞白帝彩云间,千里江陵一日还。
两岸猿声啼不住,轻舟已过万重山。
>>>
二、字符串与数字的相互转换
1.将字符串转换为数字:
可以使用int()和float()实现,如果成功则返回数字,否则引发异常。
>>>int("80")
80
>>>int("80.0")
Traceback(most recent call last):
File "<pyshell#114>", line 1, in <module>
int ("80.0")
ValueError: invaile literal for int() with base 10: '80.0'
>>>float("80.0")
80.0
>>>int ("AB") //按照十进制无法转换‘AB’
Traceback(most recent call last): //按照十六进制转换‘AB’
File "<pyshell#116>", line 1, in <module>
int ("AB")
>>>int("AB",16)
171
>>>
2.将数字转换为字符串:
可以使用str()函数,str()函数可以将很多类型的数据都转换为字符串。
>>> str(123)
'123'
>>>money = 5834.5678
>>>str(money)
'5834.5678'
>>>str(True)
'True'
>>>
三、格式化字符串
1.使用字符串format()方法,可以实现字符串的拼接,还可以格式化字符串,将指定的字符串转换为想要的输出格式。
2.使用占位符:将表达式的计算结果插入字符串中,则用占位符 { }
-
默认占位符
-
参数序号占位符
-
参数名占位符
四、 格式化控制符
1.语法: { 1 :d }
- 1:参数序号
- d:格式控制符
- 参数序号与冒号之间不能有空格
2.具体格式化控制符
>>> money - 5834.5678
>>> name = 'Tony'
>>> '{0:S}年龄和{1:d},工资是{2:f}元。'.format(name,20,money)
'Tony 年龄20,工资是5834.567800元。'
>>> '{0}年龄{1},工资是{2:0.2f}元。'.format(name,20,money)
'Tony年龄20,工资是5834.57元。'
>>> "{0}今天收入是{1:G}元,".format(name, money)
'.Tony今天收入是5834.57元。'
>>>"{0}今天收入是{1:g)元,".format(name,money)
'Tony今天收入是5834.57元。'
>>> "{0}今天收入是{1:e}元。".format(name, money)
'Tony今天收入是5.834568e+03元。'
>>> "{0}今天收入是{1:E}元。".format(name,money)1
'Tony今天收入是5.834568E+03元。'
>>>'十进制数{0:d}的八进制表示为{0:o]'.format(18)
'十进制数18的八进制表示为22'
>>>'十进制数{0:d}的十六进制表示为{0:x}'.format(18)
'十进制数18的十六进制表示为12'
>>>
五、 字符串的操作
1.字符串类为我们提供了丰富的方法来操作字符串。
2.字符串查找
- str.find ( sub [ , start [ ,end ] ] ) 查找子字符串
- 在索引start到end之间查找子字符串sub,如果找到,则返回最左端位置的索引;如果没有找到,则返回-1。
3.字符串替换
str.replace ( old , new [ , count ] ) 字符串替换
- new子字符串替换old子字符串。
- count参数指定了替换old子字符串的个数,count被省略,则替换所有old子字符串。
>>> text = 'AB CD EF GH IJ'
>>> text.replace(' ' , '|',2)
'AB|CD|EF GH IJ'
>>>text.replace(' ' , '|')
'AB|CD|EF|GH|IJ'
>>>text.replace(' ' , '|',1)
'AB|CD EF GH IJ'
>>>
4. 字符串分割
str.split ( sep = None , maxsplit = 1)
- 使用sep子字符串分割字符串str。
- maxsplit是最大分割次数,如果maxsplit被省略,则表示不限制分割次数。
>>> text = 'AB CD EF GH IJ'
>>> text.split(' ')
['AB', 'CD', 'EF', 'GH', 'IJ']
>>> text.split(' ',maxsplit=0)
['AB CD EF GH IJ']
>>> text.split(' ',maxsplit=1)
['AB', 'CD EF GH IJ']
>>> text.split(' ',maxsplit=2)
['AB', 'CD', 'EF GH IJ']
>>>