字符串的详细操作(string)

字符串操作

字符串删除前后指定的字符

作用:用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。

删除字符串前后所有的指定的字符

函数 :str.strip([移除字符串头尾指定的字符序列]) #默认删除空格
例如:

a = "000000Holle World  0000000"
b = "      123      "

print(a.strip("0"))     #指定删除字符串a前后所有的0
print(b.strip())        #不指定删除的字符串,默认删除空格

>>>Holle World  
123

** 删除字符串前面的指定字符:str.lstrip();用法相同于strip**
** 删除字符串后面的指定字符:str.rstrip();用法相同于strip**

字符串的大小写操作

将所有单词首字母大写

函数:capitalize() #首字母大写,其他不变
语法结构:字符串.capitalize()
函数:str.title()
作用:返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写.
`

字符全部大写转换成小写
函数 lower()

函数:str.lower()
作用:返回将字符串中所有大写字符转换为小写后生成的字符串。

函数 casefold() (没啥用)

作用:转换字符串中所有大写字符为小写。
和lower() 的区别:lower() 方法只对ASCII编码,也就是‘A-Z’有效,对于其他语言(非汉语或英文)中把大写转换为小写的情况只能用 casefold() 方法
`

字符全部小写转换成大写

函数:str.upper()
作用:返回小写字母转为大写字母的字符串。
`

把所有大写转小写,小写转大写

函数:str.swapcase()
作用:返回大写转小写,小写转大写后的字符串

字符串的查看操作

字符串可以使用切片查看某一位置的元素

字符串可以使用切片来查看,和列表相似
例如:

print("Hello World"[1])   #更多具体方法查看列表

>>>e
查找某字符或字符串的下标位置

函数 :str.find(str, beg=0, end=len(string))
查找不到字符串显示为-1
参数:

str -- 查看的字符串,并不局限于一个字符,可以是多个.
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。

例如:

a = "Holle World"  
print(a.find("oll"))     #查看字符"oll"的下标位置,位置为第一个元素的位置

>>>1

函数:str.rfind()
作用:返回字符串最后一次出现的位置(从右向左查询),如果没有匹配项则返回-1。
参数:同find
例如:

a = "Holle World"
print(a.rfind("l"))   #查找"l"最后出现的下标

>>>9

**函数:index() **
该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

查看某部分字符串是否在整个字符串内

使用in,在的话返回True;不在返回False
例如:

print("lo" in "Hello World")

>>>True
统计字符串里某个字符出现的次数

函数:str.count(sub, start= 0,end=len(string))
函数参数:

sub -- 查看的字符串
start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
end -- 字符串中结束搜索的位置,默认为字符串的最后一个位置。

例如:

a = "Holle World"
print(a.count("l"))    #查看"L"在整个字符串中出现的次数

>>>3

判断字符串是否以指定后缀结尾 或开头

判断字符串是否以指定后缀结尾

可以指定查看范围
函数:str.endswith(suffix[, start[, end]])
函数参数:

suffix -- 要查看的字符串,并不局限于一个字符串,可以是多个。
start -- 字符串中的开始位置。
end -- 字符中结束位置。

例如:

a = "Holle World"
print(a.endswith("rld"))   #查看是什么结尾并不局限于一个字符串,可以输入一个或多个

>>>True   #返回布尔值  True/FALSE
判断字符串是否以指定前缀开头

函数:str.startswith(str, beg=0,end=len(string))
参数同上

字符串的拼接 高效率

使用join(),将序列中的元素以指定的字符连接生成一个新的字符串。可以把列表拼接成字符串
语法结构:`“拼接字符串”.join(要拼接的一个序列)
例如:

a = "123"
b = "456"
c = "789"

d = "".join((a, b, c, ))   #无拼接符
print(d)    #输出:123456789

e = "-----".join((a, b, c, ))  #拼接符为"-----"
print(e)   #输出为:123-----456-----789

>>>123456789
123-----456-----789

格式化输出字符串

使用%输出方式

详细看:
https://blog.csdn.net/weixin_35955795/article/details/52564672

使用{}方式输出方式

比%简单,可以接受不限个参数,位置可以不按顺序
函数:str.format()
详细参数参考: http://www.runoob.com/python/att-string-format.html
例如:

a = "Holle World {name} "    #在字符串里面添加"{}",里面为变量
print(a.format(name="Tony"))   #使用函数format,定义变量

>>>Holle World Tony 

函数:format_map()
和format相似,他后面参数是一个字典
例如:

b = {"name": "Tony", "age": 18}   
a = "Holle World {name} {age} "  
print(a.format_map(b))   #参数里面也可以现作一个字典,也可以使用变量

>>>Holle World Tony 18 

字符串的格式操作

向字符串左右两边添加字符 居中

使用函数 center()
语法结构:`字符串.center(字符个数, “字符”)
例如:

a = "Holle World"    #字符串
print(a.center(40, "*"))   #向字符串左右两边各添加字符"*"号40个

>>>**************Holle World***************

`

向字符串左面添加字符 右对齐

函数:str.rjust(width[, fillchar])
参数:

width -- 指定填充指定字符后中字符串的总长度.
fillchar -- 填充的字符,默认为空格。

例如:

a = "Holle World"
print(a.rjust(50, "="))

>>>=======================================Holle World

`

向字符串右面添加字符 左对齐

函数:str.ljust(width[, fillchar])
参数:同上
例如:

a = "Holle World"
print(a.ljust(50, "="))

>>>Holle World=======================================

自定义\t制表符的空格

函数 expandtabs()
例如:

a = "Hol\tle World"     #字符串中放入了\t制表符
print(a.expandtabs(tabsize=15))      # 这里设置制表符强制为15个空格

>>>Hol            le World   #放置制表符的位置成了15个空格

判断字符串的组成

判断字符串是否是纯数字组成

函数:str.isdigit()
`

检查字符串是否只由字母组成

函数:str.isalpha()
作用:如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
`

判断字符串中所有的字母是否都为大写。

函数:str.isupper()
`

检测字符串是否由小写字母组成。

函数:str.islower()
作用:如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
`

判断字符串里面是否包含除了字母和数字之外的特殊字符

函数:str.isalnum()
作用:若字符串里面包含除了字母和数字之外的字符,返回False,反之返回True
注:包含中文也返回True
`

判断字符串是否由空格组成

函数:str.isspace()
作用:如果字符串中只包含空格,则返回 True,否则返回 False.
`

检查字符串是否是十进制字符

函数:str.isdecimal()
这种方法只存在于unicode对象。
注意:定义一个十进制字符串,只需要在字符串前添加 ‘u’ 前缀即可。
例如:

str = u"this2009";  
print str.isdecimal();

str = u"23443434";
print str.isdecimal();

>>>False
True

`

判断字符串中所有的单词首字母是否为大写,且其他字母为小写。

函数:str.istitle()
作用:如果字符串中所有的单词拼写首字母是否为大写,且其他字母为小写则返回 True,否则返回 False.

`

使用指定符号进行分割字符串

函数:str.partition(指定的分隔符) #只分隔一次,返回元组
作用:如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。
例如:

a = "Holle World"
print(a.partition("o"))   #分隔符"o"

>>>('H', 'o', 'lle World')   

函数:str.split(str="", num=string.count(str)). #全部分割掉,返回列表
参数:

str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num -- 分割次数。默认为 -1, 即分隔所有。

作用:通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串
例如:

a = "Holle World hi"
print(a.split(" "))    #分隔符为空格,不指定分割次数,全部分割
 
>>>['Holle', 'World', 'hi']    #返回列表

函数:rsplit()
作用:从字符串的最后面开始分割,参数/使用方法同split

替换字符串的某一部分

作用:把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次
函数:str.replace(old, new[, max])
参数:

old -- 将被替换的子字符串。
new -- 新字符串,用于替换old子字符串。
max -- 可选字符串, 替换不超过 max 次

例如:

a = "Holle World"    
print(a.replace("l", "p", 2))   #把"l"替换成"p",最大替换2个   ;也可以替换单词或多个元素
 
>>>Hoppe World   
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值