字符串 str30个基本方法。
(其中join()、split()、find()、strip()、upper()、lower()必须掌握)
1.capitalize()功能:首字母大写
test = "aLex"
#首字母大写
v = test.capitalize()
print(v)
输出:
Alex
2.casefold()方法变小写,casefold更牛逼,很多未知的对相应变小写
test = "wangXIXI"
v1 = test.casefold()
print(v1)
v2 = test.lower()
print(v2)
输出:
wangxixi
wangxixi
3.center()方法
设置宽度,并将内容居中,20代指总长度*空白未知填充,一个字符,可有可无。
test = "wangXIXI"
print(test)
v = test.center(20,"*")
print(v)
输出:
wangXIXI
******wangXIXI******
4.count()方法
去字符串中寻找,寻找子序列的出现次数。
test = "aLexalexr"
v1 = test.count('ex')
v2 = test.count('ex',1,5) #设置起始位置,从1到5
print(v1,v2)
输出:
2 1
5.endswith()方法。
以什么什么结尾,startswith()以什么什么开始。
test = "alex"
v1 = test.endswith('ex')
print(v1)
v2 = test.startswith('ex')
print(v2)
输出:
True
False
6.find()方法
从开始往后找,找到第一个之后,获取其位置,未找到输出 -1。
test = "alexalex"
v1 = test.find('ex')
v2 = test.find('ex',4,6) #设置起始位置,从4到6
print(v1,v2)
输出:
2 -1
7.format()方法
格式化,将一个字符串中的占位符替换为指定的值。
test= 'i am {name}, age {a}'
print(test)
v = test.format(name='alex',a=19)#或者 v = test.format('alex',19)
print(v)
输出:
i am {name}, age {a}
i am alex, age 19
# 格式化,传入的值 {"name": 'alex', "a": 19}
test = 'i am {name}, age {a}'
v1 = test.format(name='df',a=10)
v2 = test.format_map({"name": 'alex', "a": 19})
print(v1)
print(v2)
输出:
i am df, age 10
i am alex, age 19
8.功能1isalnum()方法
判断字符串中是否只包含字母和数字。
test = "123"
v = test.isalnum()
print(v)
输出:
True
9.expandtabs()方法
test= "username\temail\tpassword\nxixi\txixi@q.com\t123\nshishi\tshishi@q.com\t123\nwangwang\twangwang@q.com\t123"
v = test.expandtabs(20)#断句20,(每行不够20位数用/t空格补够20位)
print(v)
输出:
username email password
xixi xixi@q.com 123
shishi shishi@q.com 123
wangwang wangwang@q.com 123
10.isalpha():方法
判断字符串中是否是字母或汉字。
test = "as2df"
v = test.isalpha()
print(v)
输出:
False
11.isdecimal()、isdigit()、isnumberic()方法
判断当前输入是否是数字,isdecimal()判断十进制的小数,isdigit()包含特殊特殊符号的字符不支持中文,isnumberic()支持中文
test = "二"
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)
输出:
False False True
12.islower方法
判断字符串是否由小写字母组成。
str = "Welcom to yiibai python tutorials!"
print (str.islower())
str = "welcom to yiibai python tutorials!"
print (str.islower())
输出:
False
True
13.isprintable()方法
判断是否存在不可显示的字符 ( \t制表符 \n换行)
test = "oiuas\tdfkj"#\t不可见
v = test.isprintable()
print(v)
输出:
False
14.isspace() 方法
检测字符串是否只由空格组成。
str = " ";
print (str.isspace())
str = "This is string example....wow!!!"
print (str.isspace())
输出:
True
False
15.title() 方法
返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())判断是否标题。
tr = "this is string example....wow!!!"
print (str.title())
输出:
This Is String Example....Wow!!!
15.join() 方法
用于将序列中的元素以指定的字符连接生成一个新的字符串。
str = "-";
seq = ("a", "b", "c") # 字符串序列
print (str.join(seq ))
输出:
a-b-c
16. ljust() 方法
返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
str = "this is string example....wow!!!"
print (str.ljust(50, '*'))
输出:
this is string example....wow!!!******************
17.rjust() 方法
返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。
str = "this is string example....wow!!!"
print (str.rjust(50, '/'))
输出:
//////////////////this is string example....wow!!!
18. zfill() 方法
返回指定长度的字符串,原字符串右对齐,前面填充0。
str = "this is string example....wow!!!"
print(str.zfill(40))
print (str.zfill(50))
输出:
00000000this is string example....wow!!!
000000000000000000this is string example....wow!!!
19. lower() 方法
转换字符串中所有大写字符为小写。
str = "THIS IS STRING EXAMPLE....WOW!!!"
print(str.lower())
输出:
this is string example....wow!!!
20.string.isupper()方法
判断如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False
21.string.upper()方法
转换字符串中所有大写字符为大写。
22.string.lstrip()方法
截截掉字符串左边的空格或指定字符。或者\t,\n。
23.string.rstrip()方法
截掉 string 右边的空格或指定字符。或者\t,\n。
24.string.strip()方法
截掉 string 左右两边的的空格或指定字符。或者\t,\n。
25.string.maketrans() 方法
用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标.注:两个字符串的长度必须相同,为一一对应的关系。intab -- 字符串中要替代的字符组成的字符串。outtab -- 相应的映射字符的字符串。
intab = "aeiou"
outtab = "12345"
trantab = maketrans(intab, outtab)
str = "this is string example....wow!!!"
print (str.translate(trantab))
输出:
th3s 3s str3ng 2x1mpl2....w4w!!!
26.string.partition() 方法
string.rpartition() 方法
用来根据指定的分隔符将字符串进行分割。如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。string.rpartition() 方法,从开始。
str = "www.runoob.com"
print(str.partition("r"))
输出:
('www.', 'r', 'unoob.com')
26.split()方法
通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串.
语法:str.split(str="", num=string.count(str)).
str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。num -- 分割次数。
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print (str.split( ))
print (str.split(' ', 1 ))
输出:
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc \nLine4-abcd']
27.splitlines()方法
按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。
str.splitlines([keepends])
keepends -- 在输出结果里是否去掉换行符('\r', '\r\n', \n'),默认为 False,不包含换行符,如果为 True,则保留换行符。
str1 = 'ab c\n\nde fg\rkl\r\n'
print (str1.splitlines())
str2 = 'ab c\n\nde fg\rkl\r\n'
print (str2.splitlines(True))
输出:
['ab c', '', 'de fg', 'kl']
['ab c\n', '\n', 'de fg\r', 'kl\r\n']
28.startswith() 方法
用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。
str -- 检测的字符串。
strbeg -- 可选参数用于设置字符串检测的起始位置。
strend -- 可选参数用于设置字符串检测的结束位置。
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
29.swapcase() 方法
用于对字符串的大小写字母进行转换。
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!!!
网友评论