Python 常用字符串操作

Python 常用字符串操作


1、Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

s.strip() .lstrip() .rstrip(',') 去空格及特殊符号

复制字符串

Python

1 #strcpy(sStr1,sStr2)
2 sStr1= 'strcpy'
3 sStr2= sStr1
4 sStr1= 'strcpy2'
5 print sStr2

连接字符串

Python

1 #strcat(sStr1,sStr2)
2 sStr1= 'strcat'
3 sStr2= 'append'
4 sStr1+= sStr2
5 print sStr1

查找字符

< 0 未找到

Python

1 #strchr(sStr1,sStr2)
2 sStr1= 'strchr'
3 sStr2= 's'
4 nPos= sStr1.index(sStr2)
5 print nPos

比较字符串

Python

1 #strcmp(sStr1,sStr2)
2 sStr1= 'strchr'
3 sStr2= 'strch'
4 print cmp(sStr1,sStr2)

扫描字符串是否包含指定的字符

Python

1 #strspn(sStr1,sStr2)
2 sStr1= '12345678'
3 sStr2= '456'
4 #sStr1 and chars both in sStr1 and sStr2
5 print len(sStr1and sStr2)

字符串长度

Python

1 #strlen(sStr1)
2 sStr1= 'strlen'
3 print len(sStr1)

将字符串中的大小写转换

Python

1 #strlwr(sStr1)
2 sStr1= 'JCstrlwr'
3 sStr1= sStr1.upper()
4 #sStr1 = sStr1.lower()
5 print sStr1

追加指定长度的字符串

Python

1 #strncat(sStr1,sStr2,n)
2 sStr1= '12345'
3 sStr2= 'abcdef'
4 n= 3
5 sStr1+= sStr2[0:n]
6 print sStr1

字符串指定长度比较

Python

1 #strncmp(sStr1,sStr2,n)
2 sStr1= '12345'
3 sStr2= '123bc'
4 n= 3
5 print cmp(sStr1[0:n],sStr2[0:n])

复制指定长度的字符

Python

1 #strncpy(sStr1,sStr2,n)
2 sStr1= ''
3 sStr2= '12345'
4 n= 3
5 sStr1= sStr2[0:n]
6 print sStr1

将字符串前n个字符替换为指定的字符

Python

1 #strnset(sStr1,ch,n)
2 sStr1= '12345'
3 ch= 'r'
4 n= 3
5 sStr1= n* ch+ sStr1[3:]
6 print sStr1

扫描字符串

Python

1 #strpbrk(sStr1,sStr2)
2 sStr1= 'cekjgdklab'
3 sStr2= 'gka'
4 nPos= -1
5 for cin sStr1:
6     if cin sStr2:
7         nPos= sStr1.index(c)
8         break
9 print nPos

翻转字符串

Python

1 #strrev(sStr1)
2 sStr1= 'abcdefg'
3 sStr1= sStr1[::-1]
4 print sStr1

查找字符串

Python

1 #strstr(sStr1,sStr2)
2 sStr1= 'abcdefg'
3 sStr2= 'cde'
4 print sStr1.find(sStr2)

分割字符串

Python

1 #strtok(sStr1,sStr2)
2 sStr1= 'ab,cde,fgh,ijk'
3 sStr2= ','
4 sStr1= sStr1[sStr1.find(sStr2)+ 1:]
5 print sStr1
6 或者
7 s= 'ab,cde,fgh,ijk'
8 print(s.split(','))

连接字符串

Python

1 delimiter= ','
2 mylist= ['Brazil','Russia','India','China']
3 print delimiter.join(mylist)

PHP 中 addslashes 的实现

Python

1 def addslashes(s):
2     d= {'"':'\\"', "'":"\\'", "\0":"\\\0", "\\":"\\\\"}
3     return ''.join(d.get(c, c) for cin s)
4  
5 s= "John 'Johny' Doe (a.k.a. \"Super Joe\")\\\0"
6 print s
7 print addslashes(s)

只显示字母与数字

Python

1 def OnlyCharNum(s,oth=''):
2     s2= s.lower();
3     fomart= 'abcdefghijklmnopqrstuvwxyz0123456789'
4     for cin s2:
5         if not cin fomart:
6             s= s.replace(c,'');
7     return s;
8  
9 print(OnlyStr("a000 aa-b"))



2、python字符串截取 替换 查找 分割的实例代码

一、截取字符串
使用 变量[头下标:尾下标],即可截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。
例1:字符串截取
 

复制代码代码示例:
str = '12345678'
print str[0:1]
>> 1 # 输出str位置0开始到位置1以前的字符
print str[1:6]
>> 23456 # 输出str位置1开始到位置6以前的字符
num = 18
str = '0000' + str(num) # 合并字符串
print str[-5:] # 输出字符串右5位
>> 00018

二、替换字符串
使用 变量.replace("被替换的内容","替换后的内容"[,次数]),替换次数可以为空,即表示替换所有。要注意的是使用replace替换字符串后仅为临时变量,需重新赋值才能保存。
例2:字符串替换
 

复制代码代码示例:
str = 'akakak'
str = str.replace('k',' 8') # 将字符串里的k全部替换为8
print str
>> 'a8a8a8' # 输出结果

三、查找字符串
使用 变量.find("要查找的内容"[,开始位置,结束位置]),开始位置和结束位置,表示要查找的范围,为空则表示查找所有。
查找到后会返回位置,位置从0开始算,如果每找到则返回-1。
例3:字符串查找
 

复制代码代码示例:
str = 'a,hello'
print str.find('hello') # 在字符串str里查找字符串hello
>> 2 # 输出结果

四、分割字符串
使用 变量.split("分割标示符号"[分割次数]),分割次数表示分割最大次数,为空则分割所有。

例4:字符分割
 

复制代码代码示例:
str = 'a,b,c,d'
strlist = str.split(',') # 用逗号分割str字符串,并保存到列表
for value in strlist: # 循环输出列表值
print value
>> a # 输出结果
>> b
>> c
>> d
以上就是本节 python教程 的内容,通过四个例子,讲解了 python 中字符串的截取、替换、查找与分割操作,希望对大家有所帮助。
任何一门编程语言中,对字符串的操作,都是个不变的话题,很常用,建议大家好好研究下。




你可能感兴趣的:(python,常用字符串操作)