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)
2sStr1 ='strcpy'
3sStr2 =sStr1
4sStr1 ='strcpy2'
5print sStr2

连接字符串

Python

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

查找字符

< 0 未找到

Python

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

比较字符串

Python

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

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

Python

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

字符串长度

Python

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

将字符串中的大小写转换

Python

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

追加指定长度的字符串

Python

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

字符串指定长度比较

Python

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

复制指定长度的字符

Python

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

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

Python

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

扫描字符串

Python

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

翻转字符串

Python

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

查找字符串

Python

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

分割字符串

Python

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

连接字符串

Python

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

PHP 中 addslashes 的实现

Python

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

只显示字母与数字

Python

1def OnlyCharNum(s,oth=''):
2    s2 = s.lower();
3    fomart = 'abcdefghijklmnopqrstuvwxyz0123456789'
4    forcin s2:
5        ifnotc infomart:
6            s=s.replace(c,'');
7    returns;
8 
9print(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 去掉右边的空格

 

### 回答1: 好的,关于Python字符串截取,可以使用字符串的切片功能来实现。具体方法是使用方括号和冒号来指定要截取字符串的起始和结束位置,如下所示: ``` str = "Hello, World!" substr = str[0:5] # 截取从索引0开始到索引5之前的子字符串 print(substr) # 输出结果为:Hello ``` 在这个例子中,我们将字符串变量str的前5个字符截取出来,然后赋值给substr变量。使用类似这样的方式,您可以指定任何要截取的子字符串的起始和结束位置,并将其赋值给一个新的变量。 ### 回答2: Python 字符串截取可以通过切片(slicing)来实现。切片是指从一个字符串中获取指定范围内的子串,语法为string[start:end],其中start表示起始索引位置(包含),end表示结束索引位置(不包含)。 例如,对于字符串s="Hello, World!",我们可以用切片来截取子串。假设我们想获取字符串中的"Hello",我们可以使用s[0:5]来实现,其中start为0,end为5。如果我们想获取字符串中的"World",则可以使用s[7:12],即start为7,end为12。 另外,切片还有一些额外的功能。如果不指定start,则默认为0,表示从字符串的第一个字符开始截取。如果不指定end,则默认为字符串的长度,表示截取字符串的最后一个字符。例如,s[:5]表示从字符串的起始位置截取到索引位置为4的字符,即"Hello";s[7:]表示从索引位置为7的字符一直截取字符串的末尾,即"World!"。 此外,还可以通过指定步长(step)来跳过一些字符,语法为string[start:end:step]。例如s[0:12:2]表示从字符串的起始位置开始,每隔2个字符取一个字符,即"HloWrd"。 需要注意的是,切片操作返回的是一个新的字符串,不会修改原始字符串。如果想要修改原始字符串,可以使用切片和字符串拼接的方式。 综上所述,通过切片(slicing)可以实现字符串截取,通过指定起始索引位置、结束索引位置和步长,可以灵活地获取需要的子串。 ### 回答3: Python 字符串截取指的是从一个字符串中获取部分子字符串。在Python中,可以使用字符串的切片(slice)操作来进行字符串截取。 切片操作的语法是:[起始索引:结束索引:步长]。 起始索引表示截取的起始位置,结束索引表示截取的结束位置,步长表示每次截取时跳过的字符个数。 下面是一些示例: 1. 截取字符串的一部分: ```python string = "Hello, World!" sub_string = string[7:12] # 从索引7开始,截取到索引12之前的字符串 print(sub_string) # 输出 "World" ``` 2. 从字符串的开头或结尾截取一部分: ```python string = "Hello, World!" sub_string = string[:5] # 从开头截取到索引5之前的字符串 print(sub_string) # 输出 "Hello" sub_string = string[7:] # 从索引7开始截取字符串末尾 print(sub_string) # 输出 "World!" ``` 3. 使用步长来间隔截取字符: ```python string = "Hello, World!" sub_string = string[::2] # 从开头到末尾,每隔一个字符截取 print(sub_string) # 输出 "Hlo ol!" ``` 需要注意的是,切片操作中的起始索引是包含在结果中的,而结束索引是不包含在结果中的。 另外,若省略起始索引,则表示从字符串的开头开始截取;若省略结束索引,则表示截取字符串的末尾;若省略步长,则默认为1。 希望这些示例能够帮助您理解Python中的字符串截取操作
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值