str类方法

.lower()、.upper()
变为小写或变为大写。casefold()函数可以改变其他语言其他类型的大小写对应关系;lower函数只能改变英语大小写

test="aLex"
v1=test.casefold()
v2=test.lower()
print(v1,v2)
test="alex"
v=test.upper()
print(v)

.swapcase()
原来是大写变为小写,原来是小写变为大写。

test="AlexaLexalEX"
v=test.swapcase()
print(v)

.count(’’)
在字符串中寻找子序列出现的次数,可以设置开始和结束的位置参数

test="alexalex"
v=test.count('ex',2,8)
print(v)

.startswith(’’)、endswith(’’)
判断是否以某字符开始或结束

test="alex"
v1=test.startswith('a')
v2=test.endswith('x')
print(v1,v2)

.find(’’)、.index(’’)
从开始往后找,找到第一个后获取其位置,可以设置开始寻找和结束寻找的位置参数
.find()函数未找到时返回-1;.index()函数未找到会报错

test="alexalex"
v=test.find('ex',5,8)
print(v)
test="alexalex"
v=test.index('b')

.format()、.format_map()
格式化,将目标字符串中的占位符替换为指定的内容,如果有标识按照标识替换占位符,如果没有标识按照顺序替换占位符。
.format_map({})函数会按照字典进行替换。

test='I am {name},age{a}'
v=test.format(name='alex',a=19)
print(v)
test="I am {0},age{1}"
v=test.format("alex",19)
print(v)
test="I am {name},age{a}"
v=test.format_map({"name":'alex',"a":19})
print(v)

.isalnum()
判断字符串中是否只包含字符和数字

test="abcd889"
v=test.isalnum()
print(v)

.isalpha()
判断字符串中是否只包含字母(汉字也可以)

test="asdf一"
v=test.isalpha()
print(v)

.expandtabs()
以n个字符断句,遇到\t补到n

test="12345678\t9"
v=test.expandtabs(6)
print(v,len(v))

.isdecimal()、.digit()、.numeric()
判断是否是数字。
.isdecimal()函数智能判断是否是10进制数;.isdigit()函数可以判断是否是10进制数和数字字符;.isnumeric()函数可以判断是否是10进制数、数字字符和中文数字。
将.isdecimal()函数、isdigit()函数、isnumeric()函数配合使用可以判断字符串包含的是哪种数字。

test="1"
v=test.isdecimal()
print(v)
test="②"
v=test.isdigit()
print(v)
test="二"
v=test.isnumeric()
print(v)

.isidentifier()
判断字符串内容是否可以做变量名

test="123"
v=test.isidentifier()
print(v)

.isprintable()
判断是否都是可以显示的内容

test="abc\nd"
v=test.isprintable()
print(v)

.isspace()
判断字符串是否都是空格

test="     "
v=test.isspace()
print(v)

.istitle()、.title()
判断字符串是否是标题(每个单词首字母大写)、将字符串转换为标题形式

test="return True if the string is a whitespace string"
v1=test.istitle()
v2=test.title()
print(v1,v2)

.join()
将字符串中的每一个字符按照指定分隔符进行分割。可提前定义分隔符也可以将分隔符写在join函数之前

test="你我他"
t="1"
v=t.join(test)
print(v)
test="你我他"
v="_".join(test)
print(v)

.ljust()、.rjust()、.center()、.zfill()
在指定位置填充指定字符至指定数量。
.rjust()函数将内容放在右边在左边填充;.ljust()函数将内容放在左边在右边填充;.center()函数将内容放在中间在两边进行填充。
.zfill()函数只能以0填充。

test="alex"
v1=test.ljust(10,'*')
v2=test.rjust(10,'*')
v3=test.center(10,'*')
v4=test.zfill(10)
print(v1,v2,v3,v4)

.strip()
去处首尾的空格和\n、\t或者去除首尾的指定字符。
.lstrip()函数去除左边空格和\n、\t;rstrip()去除右边空格和\n、\t;.strip()函数将去除首尾空格和\n、\t。
.strip()函数还可以去除首尾的指定字符,同样分为.lstrip(’’)、.rstrip(’’)和.strip()三种方式。会将只要在指定字符中的字符全部移除。

test="	\nalex\n	"
v1=test.lstrip()
v2=test.rstrip()
v3=test.strip()
print(v1,v2,v3)
test="xaaalxaelxaax"
v1=test.lstrip('xa')
v2=test.rstrip('xa')
v3=test.strip('xa')
print(v1,v2,v3)

.maketrans()、.translate()
制造对应关系后替换。

v="abffb"
m=str.maketrans("bf","12")
new_v=v.translate(m)
print(new_v)

.partition()、.split()
分割。
.partition(’’)函数将会从左找到第一个目标字符,然后将目标字符串分为三份;.rpartition(’’)函数将会从右找到第一个目标字符,然后将目标字符串分为三份。
.split(’’)函数将按照目标字符从左进行分割,但目标字符会在目标字符串中消除,可以指定分割次数的参数;.rsplit(’’)函数将按照目标字符从右进行分割。.split(’’)函数返回一个列表。
正则表达式相当于partition和split函数的合集,它可以选择是否消除被分隔的字符。

test="testasd"
v1=test.partition('s')
v2=test.rpartition('s')
print(v1,v2)
test="testasd"
v1=test.split('s',1)
v2=test.split('s',2)
v3=test.rsplit('s',1)
print(v1,v2,v3)

.splitlines()
按照换行符分割,.splitlines()函数可以指定是否保留换行符参数。

test="asd\nfgh\njkl"
v1=test.splitlines()
v2=test.splitlines(True)
print(v1,v2)

.replace()
替换,可指定替换几个的参数。

test="alexalexalex"
v1=test.replace('ex','b')
v2=test.replace('ex','b',2)
print(v1,v2)

字符串的其他重要结构:
索引、下标、切片
切片给定的范围为左闭右开区间

test="alex"
v1=test[0]
v2=test[0:2]
print(v1,v2)

len
获取当前字符串由几个字符组成。
在Python3中len(’’)函数结果为字符个数,Python2中len(’’)函数结果为所字节数。

test="ALex"
v=len(test)
print(v)

for循环
基本结构:

for 变量名 in 字符串:
	对变量进行操作的代码块

猜你喜欢

转载自blog.csdn.net/weixin_43690603/article/details/84137792
今日推荐