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

本文深入解析了Python中字符串操作的相关技巧,包括截取、替换、查找、连接等常见操作,详细介绍了如何通过变量进行字符串的截取、替换、查找、连接等基本操作,并通过实例演示了如何使用Python进行字符串的高级操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


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


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


# 例1:字符串截取str = '12345678'print str[0:1]>> 1   # 输出str位置0开始到位置1以前的字符print str[1:6]  >> 23456   
# 输出str位置1开始到位置6以前的字符num = 18str = '0000' + str(num) # 合并字符串print str[-5:]  # 输出字符串右5位>> 00018   
Python 替换字符串使用 变量.replace("被替换的内容","替换后的内容"[,次数]),替换次数可以为空,即表示替换所有。要注意的是使
用replace替换字符串后仅为临时变量,需重新赋值才能保存。


# 例2:字符串替换str = 'akakak'str = str.replace('k',' 8') # 将字符串里的k全部替换为8print str>> 'a8a8a8'  # 输出结果
Python 查找字符串使用 变量.find("要查找的内容"[,开始位置,结束位置]),开始位置和结束位置,表示要查找的范围,为空则表示查找所有。
查找到后会返回位置,位置从0开始算,如果每找到则返回-1。


# 例3:字符串查找str = 'a,hello'print str.find('hello') # 在字符串str里查找字符串hello>> 2   # 输出结果
Python 分割字符串使用 变量.split("分割标示符号"[分割次数]),分割次数表示分割最大次数,为空则分割所有。


例4:字符分割str = 'a,b,c,d'strlist = str.split(',') # 用逗号分割str字符串,并保存到列表for value in strlist: # 循环输出列表值    print value>> a   # 输出结果>> b>> c>> d

 

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(sStr1 and 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 c in sStr1:

6     ifcin 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 c ins)

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     forcin s2:

5         ifnotc infomart:

6             s=s.replace(c,'');

7     returns;

8  

9 print(OnlyStr("a000 aa-b"))

 

 

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   

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


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

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


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

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


例4:字符分割
str = 'a,b,c,d'
strlist = str.split(',') # 用逗号分割str字符串,并保存到列表
for value in strlist: # 循环输出列表值
    print value
>> a   # 输出结果
>> b
>> c
>> d
  字符串里有三个去空格的函数
strip 同时去掉左右两边的空格
lstrip 去掉左边的空格
rstrip 去掉右边的空格

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值