字符串对象是不可改变的,也就是说在python创建一个字符串后,你不能把这个字符中的某一部分改变。任何上面的函数改变了字符串后,都会返回一个新的字符串,原字串并没有变。
用加号拼接
>>>s='hello'+'world'
>>>print(s)
helloworld
>>>a='world'
>>>s=''.join(a)
>>>print(s)
world
用乘法重叠
>>>s='hello'*2
>>>print(s)
hellohello
声明:s为字符串,rm为要删除的字符序列
s.strip(rm) 删除s字符串中开头、结尾处,位于 rm删除序列的字符;
s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字符;
s.rstrip(rm) 删除s字符串中结尾处,位于 rm删除序列的字符;
1. 当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')
例如:
1 2
|
a = '\nabc\r' print(a.strip('')) 'abc' |
2.这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。
例如 :
1 2 3 4 5 |
|
split返回的是一个列表。
首先列出一种常用的情况,不带参数,默认是空白字符。如下:
结果为:
1.按某一个字符分割,如‘.’
1 2 3 4 |
|
结果如下:
2.按某一个字符分割,且分割n次。如按‘.’分割1次
1 2 3 4 |
|
结果如下:
3.按某一字符串分割。如:‘||’
1 2 3 4 |
|
结果如下:
描 述:方法把字符串的原字符串替换成新字符串。
输出结果:str
实 例:
#!/usr/bin/python
str = "this is string example....wow!!! this is really string";
print (str.replace("is", "was"))
print (str.replace("is", "was", 3))
结果:
thwas was string example....wow!!! thwas was really string
thwas was string example....wow!!! thwas is really string
re.sub
()替换(正则或字符串)a = re.sub(r‘hello‘, ‘i love the‘, ‘hello world‘)
print(a)
‘i love the world‘ #hello world里面的hello被 i love the替换
>>> a = re.sub(‘(\d{4})-(\d{2})-(\d{2})‘, r‘\g<2>-\g<3>-\g<1>‘, ‘2018-06-07‘)
>>> a
‘06-07-2018‘ #\2 和 \g<2> 指代的的都是前面的第二个分组
描 述:检测字符串中是否包含想要查找的字符。如果包含字符串返回字符串的索引值,否则返回-1
输出结果:索引或-1
实 例:
#!/usr/bin/env python
name = 'chenxin shi da hao ren.'
name1 = name.find('hao',20)
print(name1)
name2 = name.find('hao',10)
print(name2)
结 果:
-1
15
描 述:检测字符串中是否包含子字符串str
输出结果:索引值或报错
#!/usr/bin/python
str1 = "this is string example....wow!!!";
str2 = "exam";
print str1.index(str2);
print str1.index(str2, 10);
print str1.index(str2, 40);
结 果:
15
15
描 述:方法用来统计,必须填写关键字,默认为从头到尾。
输出结果:int
实 例:
#!/usr/bin/env python
name = 'chenxin'
name1 = name.count('e',0,4)
print(name1)
结 果:
1
实例:
#!/usr/bin/env python
data = [4,8,15,16,24,67]
print('输出整数%d浮点数%.2f'%(data[2],data[0]))
print('{d[2]} {d[0]}'.format(d=data))
print('{0} {1}'.format(data[2],data[0])
结果:
输出整数15浮点数4.00
15 4
15 4
描 述:转换字符串所有大写字符为小写
输出结果:字符串str
实 例:
#!/usr/bin/env python name = "CHENXIN" name1 = name.lower() print(name1) 结果: chenxin S.upper()将所有小写转换为大写 返回S字符串的小写、大写格式。
print('ab XY'.upper())AB #》》XY
描 述:用于对字符串的大小写字母进行转换
输出结果:str
实 例:
str = "this is string example....wow!!!";
print (str.swapcase())
str = "THIS IS STRING EXAMPLE....WOW!!!";
print (str.swapcase())
结 果:
THIS IS STRING EXAMPLE....WOW!!!
this is string example....wow!!!
描 述:将字符串的第一个字母变为大写字母(不是每个单词的首字母,而是一对双引号引起来的一组字符串)
输出结果;str
实 例:
#!/usr/bin/env python3
name = "chenxin chenxing wo ai ni"
name1 = name.capitalize()
print(name1)
结 果:
Chenxin chenxing wo ai ni
描 述:方法标题化的字符串,就是说所有单词都是以大写开始,其余字母均为小写。
输出结果:str
实 例:
#!/usr/bin/python
str = "this is string example....wow!!!";
print (str.title())
结 果:
This Is String Example....Wow!!!
描 述:将字符串所有字母变为小写。
输出结果:str
实 例:
#!/usr/bin/env python3
name = "NI SHI SHA BI ME?"
name1 = name.casefold()
print(name1)
结 果:
ni shi sha bi me?
描 述:方法用于判断字符串是否是以指定的字符串开头
输出结果:Ture,False
实 例:
#!/usr/bin/python
str = "this is string example....wow!!!";
print (str.startswith( 'this' ))
print (str.startswith( 'is', 2, 4 ));
print (str.startswith( 'this', 2, 4 ));
结果:
True
True
False
描 述:方法用于判断字符串是否以指定后缀结尾。
输出结果:Ture,False
实 例:
#!/usr/bin/python
str = "this is string example....wow!!!";
suffix = "wow!!!";
print (str.endswith(suffix))
print (str.endswith(suffix,20))
suffix = "is";
print str.endswith(suffix, 2, 4);
print str.endswith(suffix, 2, 6);
结 果:
True
True
True
False
描 述:检测一组字符串(整个字符串,而不是一个单词)是否由字符和数字组成
输出结果:True,False
实 例:
#!/usr/bin/env python
name = 'chenxin'
name1 = name.isalnum()
print(name1)
str = 'this is string example....wow!!!'
str1 = str.isalnum()
print(str1)
结果:
True
False
描 述:检测字符串是否只有字母组成
输出结果:True,False
实 例:
#!/usr/bin/env python
name = 'chenxin'
name1 = name.isalpha()
print(name1)
str = 'chen12'
str1 = str.isalpha()
print(str1)
结果:
True
False
描 述:检测字符串是否只包含十进制字符,这种方法址存在unicode对象,定义一个十进制字符串,只需要在字符串前面加'u'前缀即可。
输出结果:True,False
实 例:
#!/usr/bin/env python
name = "123456"
name1 = name.isdecimal()
print(name1)
str = "chenxin"
print(str.isdecimal())
结果:
True
False
描 述:检测字符串是否只由数字组成
输出结果:True,False
描述:判断只由数字组成,数字字符范围很大,比较isdigit范围大
输出结果:True,False
描 述:判断字符串是否是合法的标识符,字符串仅包含中文字符合法,实际上这里判断的是变量名是否合法:
输出结果:True,False
描 述:检测字符串是否只有小写字母组成
输出结果:True,False
描 述:检测字符串是否都为大写。
输出结果:返回True或False
描 述:判断字符串所包含的字符是否全部可打印。字符串包含不可打印字符,如转义字符
输出结果:True,False
描 述:判断字符串是否仅包含空格或制表符。注意:空格字符与空白是不同的
返回结果:True,False
描 述:检测字符串所有单词拼写字母是否首字母大写,其他字母小写。
输出结果:返回True或False