|
发表于 2018-5-5 01:12:31
|
显示全部楼层
重新搞了一下,请指正
capitalize(),用法是str.capitalize(),结果是返回一个新的字符串,这个新字符串和str内容一样,只是首字母大写。如果字符串的第一个字符是汉字,就不会有字母被改变。
casefold() ,用法是str.casefold(), 结果是返回一个新的字符串,这个新字符串和str内容一样,但是所有字母都为小写
center(width),用法是str.center(width), 结果是返回一个新的字符串,这个新字符串的宽度是width个字符,然后把原字符串居中显示,但是如果width小于原字符串的宽度,那么就只能显示原字符串
count(sub_str[,start[,end]]),方法,结果是返回字符串sub_str在原字符串里的出现次数,start和end为是位置索引值,为可选,表示在原字符串里的搜索范围
encode(encoding='utf-8',errors='strict'),以encoding指定的编码格式对字符串进行编码
endswith(sub_str[,start[,end]]),检查字符串是否以字符串sub_str结束,返回值为True或False。start和end为位置索引值,为可选,表示在原字符串里的搜索范围
expandtabs(tabsize=8),返回一个新的字符串,这个新字符串的内容和原字符串相同,但是里面所含tab符号(即\t)转换为tabsize个空格,tabsize的默认值是8个空格
find(sub_str[,start[,end]]),检测字符串sub_str是否包含在原字符串中,如果有则返回索引值,否则返回-1,strart和end是搜索范围,如果原字符串中有多个substr则返回第一个的位置索引值
index(sub_str[,start[,end]]),跟find方法一样,但是如果sub_str不在原字符串里就会产生一个异常
isalnum(),如果原字符串至少有一个字符,并且所有字符都是字母或数字,则返回True,否则返回False,注意空格星号等等既不是字母也不是数字
isalpha(),如果原字符串至少有一个字符,并且所有字符都是字母,则返回True,否则返回False
isdecimal(),如果原字符串只包含十进制整数数字,则返回True,否则返回False。注意小数、十六进制数、八进制数都会返回一个False。而且如果不小心把字符串写成了数值就会报错。因为字符串方法只能用于字符串变量。
isdigit(),如果原字符串只包含数字则返回True,否则返回False。注意小数、十六进制数、八进制数都会返回一个False。而且如果不小心把字符串写成了数值就会报错。因为字符串方法只能用于字符串变量。
islower(),如果原字符串中至少包含一个区分大小写的字符,注意汉字不是,并且这些字符都是小写,则返回True,否则返回False
isnumeric(),如果字符串值包含数字字符,则返回True,否则返回False。注意小数、十六进制数、八进制数都会返回一个False。而且如果不小心把字符串写成了数值就会报错。因为字符串方法只能用于字符串变量。.
isspace(),如果字符串中只包含空格,则返回True,否则返回False。
istitle(),如果字符串是标题化的格式,即所有单词的首字母都是大写而其余为小写,则返回True,否则返回False。注意如果字符串中包含中文字符,那么判断的时候不会考虑中文,只会判断所有英文单词。
一个单词是指以空格区分的英文字母组合,即使单词写错也依然算一个单词,即使这个单词前面紧连着一个汉字也不会判断汉字。
>>> st = 'Hello 一起学 Python'
>>> st.istitle()
True
>>> st = 'Hello 一起学Python'
>>> st.istitle()
True
>>> st = 'Hello一起学Python'
>>> st.istitle()
True
>>> st = 'Hello 一起学ython'
>>> st.istitle()
False
isupper(),如果字符串中至少包含一个区分大小写的字母,并且这些字母都是大写的,则返回True,否则返回False。
join(sub_str),以原字符串作为分隔符,插入到字符串sub_str的所有字符之间。注意,是之间,前后都不会插入
ljust(width),返回一个新的字符串,这个字符串的宽度是width个字符,内容与原字符串相同,并用空格填充右边。但是如果原字符串的宽度大于width,则会返回一个跟原字符串一样的字符串.这个操作就是左对齐
lower(),返回一个新的字符串,这个字符串和原字符串内容相同只是所有字母小写
lstrip(),返回一个新的字符串,这个字符串和原字符串内容相同只是去掉了左边的所有空格
partition(sub_str),其中sub_str是目标字符串,这个方法的作用就是在原字符串中寻找目标字符串,如果有的话就返回一个三元的元组,这个元组的内容格式为(pre_sub,sub_str,after_sub)。如果目标字符串有多个则会从第一个开始分。
>>> st = 'Hello一起学Python'
>>> st.partition('o')
('Hell', 'o', '一起学Python')
replace(old,new,[,count])把字符串中的old子字符串替换成new子字符串,如果count参数有赋值,则替换次数不超过count的次数,否则全部替换。
rfind(sub_str[,start[,end]]),这个方法类似于find()方法,不过是从原字符串的右边开始查找
rindex(sub_str[,start[,end]]),这个方法类似于index()方法,不过是从原字符串的右边开始查找
rjust(width),返回一个新的字符串,这个字符串的宽度是width个字符,内容与原字符串相同,并用空格填充右边。但是如果原字符串的宽度大于width,则会返回一个跟原字符串一样的字符串。这个操作就是左对齐
rpartition(sub_str),这个方法类似于partition()方法,不过是从原字符串的右边开始查找并分割。
rstrip(),返回一个新的字符串,这个字符串和原字符串内容相同只是去掉了右边的所有空格
split(sep=None,maxsplit=-1),不带参数时默认是以空格为分隔符返回一个原字符串的切片列表,如果maxsplit参数有设置,则仅分割maxsplit个切片列表,从左往右进行切片。
注意如果原字符串包含两边为空格的汉字的单词,那么汉字单词也算一个单词。
>>> st = 'Hello 你好吗 we 一起学 Python'
>>> st.split(sep=None,maxsplit=2)
['Hello', '你好吗', 'we 一起学 Python']
splitlines([keepends=False]),这个方法的keepends默认值是False或0,这个方法的作用是返回一个以换行符'\n'为分割符的原字符串切片列表,
如果keepends的值被改为不是False或0,那么原字符串里的换行符'\n'会被保留。从而在打印列表里的每个元素时就会多出一个换行,最后一行不会多。
>>> st = 'Hello 你好吗\nwe\n 一起学 Python'
>>> st1 = st.splitlines()
>>> st2 = st.splitlines(1)
>>> st1
['Hello 你好吗', 'we', ' 一起学 Python']
>>> st2
['Hello 你好吗\n', 'we\n', ' 一起学 Python']
>>> st3 = st.split()
>>> st3
['Hello', '你好吗', 'we', '一起学', 'Python']
starwith(prefix[,start[,end]]),这个方法是检查原字符串是否以子字符串prefix开头,如果是则返回True,否则返回False。start和end为位置索引值,为可选,表示在原字符串里的搜索范围。
strip([chars]),这个方法是返回一个新的字符串,这个字符串和原字符串内容相同,但是默认情况下是删除字符串前面和后面的所有空格,中间的不管。如果char参数为其他字符串值,就会返回一个删除char的值的新字符串
swapcase(),这个方法是返回一个新的字符串,翻转了原字符串里的字母的大小写
title(),这个方法是返回一个新的字符串,将原字符串的英文字母标题化了。汉字、数字和其他字符会不被考虑。
>>> stt = 'Hello 一起学ython 3version'
>> stt.title()
'Hello 一起学Ython 3Version'
translate(table),根据table的规则(可以由str.maketrans('a','b')定制)转换原字符串中的字符。这个方法暂时不太懂
upper(),返回个将原字符串里所有字母均为大写的字符串
zfill(width),返回一个长度为width的内容与原字符串相同的字符串,原字符串右对齐,左边用0填充
>>> stt.zfill(58)
'0000000000000000000000000000000000Hello 一起学\tython 3version'
以上这些方法凡是跟英文字母有关的都是仅仅考虑英文字母,即使原字符串里包含了汉字也会忽略汉字的存在,split()方法除外。
以上的这些方法都是针对字符串类型的变量,对数值、元组和列表都不行,即使是由字符串或单个字符组成的元组也不行。在python中,一个字符串的是一个名为str的类的实例对象,而元组属于tuple类,列表属于list类。
此外还有int:整型类,float:浮点型,__main__(),对象型等等
isdecimal() ,isdigit(), isnumeric()三个函数大概是一回事。
|
|