NO 1,人生苦短,我学python之python 字符串的魔法
a = 'wuzemwuzem' #capitalize,字符串首字母大写,其余小写。 # 如果字符串首字符为非字母字符,将返回原字符串。字符串仅包含非字母字符合法,但返回原字符串。如: v =a.capitalize() print(v) # center,20表示总长度, # 无 空白填充,可有可无 v1 = a.center(20,'无') print(v1) # count,统计,去字符串中寻找‘u’的个数 v2 = a.count('u') print(v2) # endswith,字符串以什么结尾,startswith,以什么开头,返回bool值 v3 = a.endswith('w') v4 = a.startswith('w') print(v3,v4) # find,从开始往后找,找到第一个后,获取其位置,找不到 返回-1 v5 = a.find('w') print(v5) #format,占位符 v6=a.format() # isalnum,判断只能出现数字和字母,返回bool v7 = a.isalnum() b = 'alssflk$#%' v8 = b.isalnum() print(v7) print(v8) # isalpha只出现字母,汉字,返回bool v11 = a.isalpha() print(v11) #expandtabs,把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。断句20 v9 = a.expandtabs(20) test = 'username\temail\tpassword\nw770723324\tm1233@qq.com\t12345\nw770723324\tm1233@qq.com\t12345\n' v10 = test.expandtabs(20) print(v10) print(v9) test = '2134二' #isdecimal,isdecimal判断输入是否是数字 v1 = test.isdecimal() #只支持十进制的数字 v2 =test.isdigit()# 既包含十进制的小数,又包含特殊的数字② v3 = test.isnumeric()#既包含十进制的小数,又包含特殊的数字②,包含中文数字 print(v1,v2,v3) # swapcase,将字符串中大小写转换 v1 = a.swapcase() print(v1) # isidentifier()判断字符串是否是合法的标识符,字符串仅包含中文字符合法,实际上这里判断的是变量名是否合法。如 c = '123adf' v13 = c.isidentifier() print(v13) c='_3hf' v13 = c.isidentifier() print(v13) #str.isprintable():判断字符串所包含的字符是否全部可打印。字符串包含不可打印字符,如转义字符,将返回False。 a = 'asdfh\tk' test = a.isprintable() print(test) # isspace 判断全部是空格 a = ' ' v= a.isspace() print(v) #str.title():字符串中每个单词的首字母大写,其余小写。单词的首字符为非字母字符也不影响转换。字符串仅包含非字母字符合法,但返回原字符串。如: a='ab cd' v = a.title() print(v) # istitle 判断是否符合标题格式首字母大写 v=a.istitle() print(v) # str.join(sequence),sequence -- 要连接的元素序列 a = '你是风儿我是傻' b = '_' print( b.join(a)) test = 'wuzem' # ljust,返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。 # rjust返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串 v1 = test.ljust(20,'*') v2 = test.rjust(20,'*') print(v1,v2) # islower 判断字符是否全部是小写 # lower 讲字符串全部变为小写 test= 'Wuzm' v1 = test.islower() v2 = test.lower() print(v1,v2) # isupper 判断字符是否全部是大写 # upper 讲字符串全部变为大写 v3= test.isupper() v4 = test.upper() print(v3,v4) # rstrip() 删除字符串字符串末尾的空格 也可以去除指定的字符串 test = 'wuzem' v1 = test.lstrip('w') v2 = test.rstrip() v3 = test.strip() print(v1,v2,v3) # maketrans() 创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。 # translate() 根据 str 给出的表(包含 256 个字符)转换 string 的字符, 要过滤掉的字符放到 deletechars 参数中 v = 'dhflksha;lsdjfowaa' m = str.maketrans('abcd','1234') new_v = v.translate(m) print(new_v) # num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num 个子字符串 v1=v.split('s',2) print(v1) # 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。 v2 = v.partition('s') print(v2) # splitlines([keepends])按照行('\r', '\r\n', \n')分隔, # 返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符 test = 'sdkf\njhsdf\nhslsdf' v = test.splitlines(True) print(v) v2 = test.splitlines(False) print(v2)