python中字符串处理方法,python入门之字符串处理
1.字符串拼接
方法:
逗号,加号,直接拼接,格式化拼接,字符串函数加入拼接
1、去空格及特殊符号
不锈钢带()。lstrip().rstrip(,)
2、复制字符串
#strcpy(sStr1,sStr2)
sStr1=strcpy
sStr2=sStr1
sStr1=strcpy2
打印sStr2
3、连接字符串
#strcat(sStr1,sStr2)
sStr1=strcat
sStr2=append
sStr1=sStr2
打印sStr1
4、查找字符
#strchr(sStr1,sStr2)
#0未找到
sStr1=strchr
sStr2=s
nPos=sStr1.index(sStr2)
打印禁食
5、比较字符串
#strcmp(sStr1,sStr2)
sStr1=strchr
sStr2=strch
打印cmp(sStr1,sStr2)
6、扫描字符串是否包含指定的字符
#strspn(sStr1,sStr2)
sStr1=12345678
sStr2=456
sStr1和sStr2中的#sStr1和字符
打印镜头(sStr1和sStr2)
7、字符串长度
#strlen(sStr1)
sStr1=strlen
打印镜头(sStr1)
8、将字符串中的大小写转换
S.lower() #小写
S.upper() #大写
S.swapcase() #大小写互换
s .大写首字母大写
字符串。大写单词#这是模块中的方法。它把S用拆分()函数分开,然后用大写()把首字母变成大写,最后用加入()合并到一起
#实例:
#strlwr(sStr1)
sStr1=JCstrlwr
sStr1=sStr1.upper()
#sStr1=sStr1.lower()
打印sStr1
9、追加指定长度的字符串
#strncat(sStr1,sStr2,n)
sStr1=12345
sStr2=abcdef
n=3
sStr1=sStr2[0:n]
打印sStr1
10、字符串指定长度比较
#strncmp(sStr1,sStr2,n)
sStr1=12345
sStr2=公元前123年
n=3
打印cmp(sStr1[0:n],sStr2[0:n])
11、复制指定长度的字符
#strncpy(sStr1,sStr2,n)
sStr1=
sStr2=12345
n=3
sStr1=sStr2[0:n]
打印sStr1
12、将字符串前n个字符替换为指定的字符
#strnset(sStr1,ch,n)
sStr1=12345
ch=r
n=3
sStr1=n * ch sStr1[3:]
打印sStr1
13、扫描字符串
#strpbrk(sStr1,sStr2)
sStr1=cekjgdklab
sStr2=gka
NPO=-1
对于sStr1中的丙:
如果sStr2中的丙:
nPos=sStr1.index
破裂
打印禁食
14、翻转字符串
#strrev(sStr1)
sStr1=abcdefg
sStr1=sStr1[:-1]
打印sStr1
15、查找字符串
#strstr(sStr1,sStr2)
sStr1=abcdefg
sStr2=cde
打印sStr1.find(sStr2)
16、分割字符串
#strtok(sStr1,sStr2)
sStr1=ab,cde,fgh,ijk
sStr2=,
sstr 1=sstr 1[sstr 1。find(sstr 2)1:]
打印sStr1
#或者
s=ab,cde,fgh,ijk
打印(s.split(,))
17、连接字符串
分隔符=,
mylist=[巴西,俄罗斯,印度,中国]
打印分隔符。加入(我的列表)
18、PHP中转义函数的实现
定义添加斜线:
d={ : ," ": \ ," \0":\\0 ," \":\}
返回""。join(d.get(c,c) for c in s)
s="约翰张诗钟多伊(又名"超级乔")\\0 "
打印s
打印添加斜线
19、只显示字母与数字
def OnlyCharNum(s,oth= ):
S2=s . lower();
fomart= abcdefghijklmnopqrstuvwxyz 0123456789
对于s2中的丙:
如果格式中没有丙:
s=s.replace(c, );
返回s;
打印(仅Str("a000 aa-b "))
20、截取字符串
str=0123456789
打印字符串[0:3] #截取第一位到第三位的字符
打印字符串[:] #截取字符串的全部字符
打印字符串[6:] #截取第七个字符到结尾
打印字符串[:-3] #截取从头开始到倒数第三个字符之前
打印字符串[2] #截取第三个字符
打印字符串[-1] #截取倒数第一个字符
打印字符串[:-1] #创造一个与原字符串顺序相反的字符串
打印字符串[-3:-1] #截取倒数第三位与倒数第一位之前的字符
打印字符串[-3:] #截取倒数第三位到结尾
打印字符串[:-5:-3] #逆序截取,具体啥意思没搞明白?
21、字符串在输出时的对齐
S.ljust(宽度,[fillchar])
#输出宽度个字符,S左对齐,不足部分用填充字符填充,默认的为空格。
S.rjust(width,[fillchar]) #右对齐
美国中心(宽度,[fillchar]) #中间对齐
S.zfill(width) #使S宽度变长并靠右对齐,不足部分用0补足。
22.在字符串中搜索和替换
S.find(substr,[start,[end]])
#返回S中substr的第一个字母的标签,如果S中没有substr,则返回-1,而start和end等效于在S中搜索[start:end]。
S.index(substr,[start,[end]])
#与find()相同,只是当s中没有substr时,将返回运行时错误。
S.rfind(substr,[start,[end]])
#返回S中最后一个substr的第一个字母的标签,如果S中没有substr,则返回-1,即从右数第一个substr的第一个字母标签。
S.rindex(substr,[start,[end]])
S.count(substr,[start,[end]]) #统计substr在s中出现的次数。
S.replace(oldstr,newstr,[count])
#用newstr替换s中的oldstar,count为替换次数。这是一般的替换形式,还有一些替换特殊字符的功能。
S.strip([chars])
#删除S前后char中的所有字符,可以理解为用None替换S前后的char。
S.lstrip([chars])
S.rstrip([chars])
S.expandtabs([tabsize])
#将S中的制表符替换为不带空格,每个制表符替换为tabsize空格。默认值为8。
23.字符串的分段和组合
S.split([sep,[maxsplit]])
#以sep为分隔符,把s分成一个列表。Maxsplit表示分割数。的默认分隔符是空白字符。
S.rsplit([sep,[maxsplit]])
s . split lines([保持端点])
#根据行分隔符将s分成一个列表。keepends是一个布尔值。如果为true,则每行后都将保留行分隔符。
S.join(seq) #用s连接seq string序列表示的序列
24、字符串映射,这个函数包括两个函数
String.maketrans(from,to)
#返回一个由256个字符组成的转换表,其中from中的字符被逐个转换为to,因此from和to的长度必须相等。
S.translate(表[,deletechars])
使用上面的函数后期制作翻译表来翻译s并删除deletechars中的所有字符。需要注意的是,如果s是unicode字符串,那么不支持deletechars参数,同样的功能可以通过将某个字符翻译成None来实现。此外,您可以使用编解码器模块的功能来创建一个更强大的翻译表。25.该字符串还具有一对编码和解码功能。
s . encode([编码,[错误]])
编码可以有各种值,如GB 2312 gbk GB 18030 bz2 zlib big 5b zse 64等。Errors默认值为“strict”,这意味着UnicodeError。其他可能的值有“ignore”、“replace”、“xmlcharrefreplace”、“反斜杠replace”以及通过codecs.register_error注册的所有值。这部分内容涉及编解码器模块,但对S.decode不是特别清楚([编码,[错误]])。
26.字符串模块中没有的字符串测试和判断函数都返回bool值。
S.startswith(前缀[,开始[,结束]])
#是以前缀开头的吗?
S.endswith(后缀[,start[,end]])
#以后缀结尾
伊索藻
#是不是都是字母数字和至少一个字符?
S.isalpha() #都是字母并且至少有一个字符?
S.isdigit() #都是数字并且至少有一个字符?
S.isspace() #是否全是空白字符且至少有一个字符?
S.islower() #S中的字母都是小写的吗?
S.isupper() #S中的字母只是大写吗?
S.istitle() #S大写吗?
27.字符串类型转换函数。这些函数仅在字符串模块中可用。
string.atoi(s[,base])
#base默认为10。如果是0,那么s可以是012或者0x23。如果是16,那么s只能是0x23或者0X12。
String.atol(s[,base]) #转换为long
String.atof(s[,base]) #转换为float
这里再次强调,string对象是不可变的,这意味着在python创建了一个字符串之后,你不能改变字符的某个部分。以上任何一个函数在改变字符串后都会返回一个新的字符串,原字符串没有改变。其实是有变通办法的。您可以使用函数S=list(S)将S更改为一个列表,其中包含一个字符。在这种情况下,您可以使用S[3]=a 来更改值,然后使用S= 。连接以将其恢复为字符串。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。