字符串处理方法
1.字符串初始化
运算符%进行格式
In [1]:x=1235
In [2]: '%o'%x
Out[2]: '2323'
In [3]: '%x'%x
Out[3]: '4d3'
In [4]: '%e'%x
Out[4]: '1.235000e+03'
Out[5]: '65,A'
In [6]: '%s'%65
Out[6]: '65'
In [34]: '%s'%123
Out[34]: '123'
格式化对象多于一个,放在元组中
In [5]: '%d,%c'%(65,65)
同时也可以对列表进行操作,也可以用str()进行字符串初始化
In [1]: '%s'%[1,2,3]
Out[1]: '[1, 2, 3]'
In [2]: str([1,2,3])
Out[2]: '[1, 2, 3]'
In [3]: str((1,2,3))
Out[3]: '(1, 2, 3)'
In [1]: '%s'%[1,2,3]
Out[1]: '[1, 2, 3]'
In [2]: str([1,2,3])
Out[2]: '[1, 2, 3]'在这里插入代码片
In [3]: str((1,2,3))
Out[3]: '(1, 2, 3)'
format方法
- 可以使用位置进行格式化
In [4]: "{} {}".format("hello", "world")
Out[4]: 'hello world'
In [5]: "{1}{0}".format("hi","world")
Out[5]: 'worldhi'
- 可以指定小数位数,化为百分数,
In [6]: '{0:.4f}'.format(1/3)
Out[6]: '0.3333'
In [7]: '{0:.2%}'.format(1/3)
Out[7]: '33.33%'
- 可进行左右对齐,居中
In [16]: '{0:>10.4f}'.format(1/3)
Out[16]: ' 0.3333'
In [36]: '{0:<10.4f}'.format(1/3)
Out[36]: '0.3333 '
In [37]: '{0:^10.4f}'.format(1/3)
Out[37]: ' 0.3333 '
- format初始化字符串使用后不再存在
In [20]: f="weather of '{0[0]}' is '{0[0]}'".format
In [21]: for i in map(f,w):
...: print(i)
...:
weather of 'mon' is 'mon'
weather of 'tue' is 'tue'
weather of 'wed' is 'wed'
In [25]: i
Out[25]: "weather of 'wed' is 'wed'"
In [26]: w
Out[26]: [('mon', 'rainy'), ('tue', 'sunny'), ('wed', 'windy')]
In [27]: f
Out[27]: <function str.format>
In [22]: '{0:_} {0:#_x}'.format(10000000)
Out[22]: '10_000_000 0x98_9680'
- 新的字符串格式化方式f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法,该方法源于PEP 498 – Literal String Interpolation,主要目的是使格式化字符串的操作更加简便。f-string在形式上是以 f 或 F 修饰符引领的字符串(f’xxx’ 或 F’xxx’),以大括号 {} 标明被替换的字段。
In [31]: w=8
In [32]: h=6
In [33]: print(f'rectangele of {w}*{h}\n area:{w*h}')
rectangele of 8*6
area:48
2.字符串基本操作
查找
- find()、 rfind()方法分别用来查找一个字符串指定范围(默认整个字符串)第一次和最后一次出现的位置
In [1]: s='apple,peach,banana,peach,pear'
In [2]: s.find('peach')
Out[2]: 6
In [3]: s.find('peach',7)
Out[3]: 19
In [4]: s.find('peach',7,20)
Out[4]: -1
In [5]: s.find('p')
Out[5]: 1
In [6]: s.rfind('p')
Out[6]: 25
- index()、 rindex()方法分别用来查找一个字符串指定范围(默认整个字符串)第一次和最后一次出现的位置
In [1]: s='apple,prach,banana,peach,prar'
In [2]: s.index('p')
Out[2]: 1
In [3]: s.rindex('p')
Out[3]: 25
In [4]: s.index('pe')
Out[4]: 19
In [5]: s.rindex('pe')
Out[5]: 19
- count() 方法返回一个字符串在当前字符串出现的次数
In [1]: s='apple,prach,banana,peach,prar'
In [6]: s.count('p')
Out[6]: 5