Python 入门学习09 —— 字符串中的常用方法总结

一、字符串

  字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ ’ 或 " " )来创建字符串。

  • 实例(Python 3.0+)
#!-*- coding:utf-8 -*-

str_a = "Let's go !"    # 单引号与双引号无区别,只是有时需要根据情况使用
print(str_a)

str_b = 'HelloWord!'
print(str_b * 2)    # 重复打印

print(str_b[5:])    # 通过索引获取字符串中的字符

print('H' in str_b)    # 判断关键字是否存在
print('h' in str_b)    # 判断关键字是否存在

str_splic1 = 'abc'
str_splic2 = '123'

print(str_splic1 + str_splic2)    # 效率低,每拼接一个字符串需开辟一块内存

str_result = ''.join([str_splic1, str_splic2])    # 利用 join() 拼接字符串
print(str_result)

str_result = '--'.join(['a', 'b', 'c'])    # 打印出 join() 的效果
print(str_result)

result

二、字符串的其他内置方法

1、count( )

count( ) 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
count(self, sub, start, end)

2、capitalize( )

capitalize( )将字符串的第一个字母变成大写,其他字母变小写。
capitalize(self)

3、center( )

center( ) 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格。
center(self, width, fillchar)

4、ljust( )

ljust( ) 方法返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。
ljust(self, width, fillchar)

5、rjust( )

rjust( ) 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。
rjust(self, width, fillchar)

6、endswith( )

endswith( ) 方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回 True,否则返回 False。可选参数 “start” 与 “end” 为检索字符串的开始与结束位置。
endswith(self, suffix, start, end)

7、startswith( )

startswith( ) 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。
startswith(self, prefix, start, end)

8、expandtabs( )

expandtabs( ) 方法把字符串中的 tab 符号 (’\t’) 转为空格,tab 符号 (’\t’) 默认的空格数是 8。
expandtabs(self, tabsize)

9、find( )

find( ) 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
find(self, sub, start, end)

10、index( )

index( ) 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 find()方法一样,只不过如果 str 不在 string 中会报一个异常。
index(self, sub, start, end)

11、format( )

Python2.6 开始,新增的一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
format(self, args, kwargs)

12、format_map( )

与 format( ) 功能一样,只是传入变量改为了字典。
format_map(self, mapping)

  • 实例(Python 3.0+)
#!-*- coding:utf-8 -*-

str_format = 'hello WoRd'
str_format1 = 'hello\tWoRd'
str_format2 = 'hello WoRd {name} is {age}'

# 统计元素个数 : 2
print(str_format.count('l'))

# 字符串首字母大写,后续字母小写 : Hello	word
print(str_format.capitalize())

# 共需 30 个字符,其余部分用 ' - ' 补充。
print(str_format.center(30,'-'))    # ----------hello WoRd----------
print(str_format.ljust(30,'-'))    # hello WoRd--------------------
print(str_format.rjust(30,'-'))    # --------------------hello WoRd

# 检测以某个内容结尾 : True
print(str_format.endswith('Rd'))

# 检测以某个内容开头 : False
print(str_format.startswith('H'))

# 改变制表符占用的空格数 : helloWoRd
print(str_format1.expandtabs(0))

# 查找元素的位置,并将索引值返回,如果有相同元素,返回第一个元素位置 : 2
print(str_format.find('l'))    # 若不存在返回 -1
print(str_format.index('l'))    # 若不存在报错 : ValueError: substring not found

# 格式化输出 : hello WoRd Springer is 18
print(str_format2.format(name = 'Springer', age = 18))
print(str_format2.format_map({'name':'Springer', 'age':18}))

result

13、isalnum( )

isalnum( ) 方法检测字符串是否由字母和数字组成。
isalnum(self)

14、isdecimal( )

isdecimal( ) 方法检查字符串是否只包含十进制字符。这种方法只存在于 unicode 对象。
isdecimal(self)

15、isdigit( )

isdigit( ) 方法检测字符串是否只由数字组成。
isdigit(self)

16、isnumeric( )

isnumeric( ) 方法检测字符串是否只由数字组成。这种方法是只针对 unicode 对象。
isnumeric(self)

17、isidentifier( )

isidentifier( ) 方法检测字符串是否符合规范( Python 命名规范)。
isidentifier(self)

18、islower( )

islower( ) 方法检测字符串是否由小写字母组成。
islower(self)

19、isupper( )

isupper( ) 方法检测字符串中所有的字母是否都为大写。
isupper(self)

20、isspace( )

isspace( ) 方法检测字符串是否只由空格组成。
isspace(self)

21、istitle( )

istitle( ) 方法检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写。
istitle(self)

22、title( )

title( ) 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。
title(self)

23、lower( )

lower( ) 方法转换字符串中所有大写字符为小写。
lower(self)

24、upper( )

upper( ) 方法将字符串中的小写字母转为大写字母。
upper(self)

25、swapcase( )

swapcase( ) 方法用于对字符串的大小写字母进行转换。
swapcase(self)

26、strip( )

strip( ) 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
strip(self, chars)

27、lstrip( )

lstrip( ) 方法用于截掉字符串左边的空格或指定字符。
lstrip(self, chars)

28、rstrip( )

rstrip( ) 方法用于截掉字符串右边的空格或指定字符。
rstrip(self, chars)

29、replace( )

replace( ) 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
replace(self, old, new, count)

30、split( )

split( ) 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。
split(self, sep, maxsplit)

31、rsplit( )

rsplit( ) 通过指定分隔符对字符串从右开始进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。
rsplit(self, sep, maxsplit)

#!-*- coding:utf-8 -*-

# 检测字符串包含的种类 : 有特殊字符返回 False
print('abc123啊'.isalnum())    # True
print('abc$'.isalnum())    # False

# 检测是否只包含十进制字符,这种方法只存在于 unicode 对象。
print('2345'.isdecimal())

# 检测是否只由数字组成,但必须是整型
print('2345.123'.isdigit())    # False
print('123'.isdigit())    # True

# 检测是否只由数字组成,这种方法是只针对unicode对象。
print(u"456".isnumeric())    # True

# 检测是否为非法字符( python 命名规范)
print("456str".isidentifier())    # False

# 检测字符是否为全小写
print("456str".islower())    # True

# 检测字符是否为全大写
print("456STR".isupper())    # True

# 判断是否为一个空格
print(" ".isspace())    # True

# 检测字符串中所有的单词拼写首字母是否为大写,且其他字母为小写。
print("Springer INNOVATION".istitle())    # False

# 将字符串改为 Title 规范的格式
print("Springer INNOVATION".title())    # Springer Innovation

# 将字符串中所有字母换为小写
print("Springer Innovation".lower())    # springer innovation

# 将字符串中所有字母换为大写
print("Springer Innovation".upper())    # SPRINGER INNOVATION

# 将字符串中大小写反转
print("Springer Innovation".swapcase())    # sPRINGER iNNOVATION

# 处理字符串中的空格、换行符以及制表符
print(" \nSpringer Innovation\t ".strip())    # Springer Innovation
print(" \nSpringer Innovation\t ".lstrip())    # Springer Innovation\t
print(" \nSpringer Innovation\t ".rstrip())    #  \nSpringer Innovation

# 将字符串中部分内容替换
print("Springer Innovation".replace('Springer','Tonies'))    #  Tonies Innovation
print("Springer Innovation".replace('n','*'))    #  Spri*ger I**ovatio*
print("Springer Innovation".replace('n','*',1))    #  Spri*ger Innovation

# 返回某内容最后一次出现的位置,若没有匹配项返回 -1。
print("Springer Innovation".rfind('n'))    #  18

# 将字符串按指定方式分割为列表
print("a b c d e".split(' '))    # ['a', 'b', 'c', 'd', 'e']
print("asbbbsdbesvbd".split('b'))     # ['as', '', '', 'sd', 'esv', 'd']
print("asbbbsdbesvbd".split('b', 1))     # ['as', 'bbsdbesvbd']
print("asbbbsdbesvbd".rsplit('b', 1))    # ['asbbbsdbesv', 'd']

# 将列表中的元素按指定方式拼接成一个字符串
print(' '.join(['a', 'b', 'c', 'd', 'e']))    # a b c d e

result


本文内容部分取自百度内容,如有雷同部分请见谅。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值