字符串相关方法

"""
新的一天,新的开始
time: 2022/2/25 10:59
"""
# capitalize - 首字母大写
# nums ='afjgjk'
nums = 'afjgjk'
num1 = nums.capitalize()
print(num1)

# casefold -返回所有字符为小写(字符串.casefold)
num1 = 'AgsgCF234'
print(num1.casefold())

# center - 返回一个指定的宽度,居中的字符串
# 字符串.center(宽度,填充字符)
# 当居中字符为奇数时,字符优先向右边补
# 当居中字符为偶数时,字符优先向左边补
num1 = 'AgsgCF234'
nums = num1.center(20, '*')
print(nums)

num1 = 'AgsgCF23'
nums = num1.center(21, '*')
print(nums)

# count - 统计子字符串得个数
# count(字符串,搜索开始下标,搜索结束下标)
# 不写开始下标和结束下标的话默认为检索全字符串
num1 = 'AgsgCF234'
nums = num1.count('g')
print(nums)

num1 = 'AgsgCF234'
nums = num1.count('g', 2)
print(nums)

# endswith  - 判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回 True,否则返回 False
# endswith(字符串,开始下标, 结束下标)- 开始下标和结束下标是一个半开半闭的区间,取不到结束下标
num1 = 'AgsgCF234'
num1.endswith('234')
print(num1.endswith('234'))
print(num1.endswith('234', 0, 8))  # False
print(num1.endswith('234', 0, 9))  # True

# expandtabs - 将字符串中的制表符(\t、tab键)换成number个空格(默认为8个空格)
# expandtabs(number):
num1 = 'Agsg\tCF234'
print(num1.expandtabs(3))

# find(str1,start,end):找到字符串在范围内第一个str1出现的下标位置
# start和end表示开始和结束的范围(默认为0,len(字符串))
num1 = 'AgsgCF234'
print(num1.find('g'))
print(num1.find('g', 2))

# format():格式化字符串,用{}和:代替%的功能
num1 = 'Agsg{}CF234'
print(num1.format(1))

# format_map - 仅使用于字符串格式中可变数据参数来源于字典等映射关系数据时才可以使用。
student = {'name': '小明', 'class': '20190301', 'score': 597.5}
s1 = '{class}班{name}总分:{score}'.format_map(student)

# index(str1,start,end):和find的功能一样,但是str1不在字符串中会报错
# 字符串.index('字符串') - 找到字符串在范围内第一个str1出现的下标位置,start和end表示开始和结束的范围(默认为0,len(字符串)
num1 = 'Agsg{}CF234'
print(num1.index('F'))

# isalnum():检查字符串是不是只有数字或者字母
num1 = 'A5548-df'
print(num1.isalnum())

# isalpha():检查字符串是不是所有字符都是字母
num1 = 'A5548-df'
print(num1.isalpha())

# isascii():检查字符串是不是为空字符串或者为ASCII码(ASCII码是从U0000~u007f之间),也就是字母数字英式符号等
num1 = '中'
print(num1.isascii())
num2 = '124ad'
print(num2.isascii())

# isdecimal():判断字符串是不是只包含十进制数字
num1 = '06556'
print(num1.isdecimal())

# isdigit():判断字符串是不是由纯数字组成
num1 = '564560'
print(num1.isdigit())

# isidentifier():判断字符串是不是有效的标识符,主要用来判断变量名是否可用
num1 = '1一壹1wfggh'
print(num1.isidentifier())

# islower():判断字符串的字母是不是全部小写,并且至少有一个小写字母
num1 = 'sdjj'
print(num1.islower())

# isnumeric(): 判断字符串是不是由纯数字字符组成(包括大写数字,和中文数字)
num1 = '1一壹'
print(num1.isnumeric())

# isprintable():检查字符串是否可以打印(不可打印的是\t和\n)
num1 = '\taa'
print(num1.isprintable())
num2 = 'aaa'
print(num2.isprintable())

# isspace():检查字符串是不是只有空格
num1 = '\n'
print(num1.isspace())

# istitle():判断字符串是不是标题化的,并且至少有一个大写字母(每个英语单语首字母大写,其余字母小写,也就是每个以字母以外的字符隔开的字母字符串是不是以字母大写开头)
# 字母和字母之间只要用字母开外的符号隔开就算一个单词,要使其标题化就让首字母大写
num1 = 'Agfg2Af5'
print(num1.istitle())

# isupper():判断字符串的字母是不是全部大写,且必须有至少一个大写字母
num1 = 'DJNFGaf'
print(num1.isupper())

# str1.join(字符串序列):用str1将字符串序列连接在一起
num1 = ['g', 'gg']
print('2'.join(num1))

# ljust(width,fillchar):将字符串左对齐,填充成长度为width的新字符串
num1 = 'gg'
print(num1.ljust(5, '#'))

# rjust(width.fillchar):将字符串右对齐,填充成长度为width的新字符串
num1 = 'gg'
print(num1.rjust(5, '#'))

# strip(str1):截掉字符串两边的str1,不能截掉中间的字符(默认为空格)
num1 = '***dfd**'
print(num1.strip('*'))

# lstrip(str1):截掉字符串左边的str1(默认为空格)
num1 = '***dfd**'
print(num1.lstrip('*'))

# rstrip(str1):截掉字符串右边的str1(默认为空格)
num1 = '***dfd**'
print(num1.rstrip('*'))

# maketrans(str1,str2):创建字符映射的转换表,在字符串中将str1中的字符对应转换成str2对应的字符
num1 = ' 1123jigugg456 '
# 将所有的'1'换成'一',将所有的'g'换成'G'-> '一一23jiGuGG456'
num2 = num1.maketrans('1g', '一G')
num3 = num1.translate(num2)
print(num3)

# partition(str1):将字符串在str1出现的第一个位置,将字符串以str1以为中心切割成:字符串左边和str1,以及字符串右边的元组
num1 = 'how are you? i am fine ,thank you.'
print(num1.partition('you'))

# replace(str1,str2,N):将字符串中的前面N个str1换成str2
num1 = 'asd3gh3fg3'
print(num1.replace('3', '9'))

# rfind(str1,start,end):查找字符串在范围内中str1出现的最后一个位置,start和end表示范围(默认为0或者len(字符串)),如果str1不在字符串中结果为-1
num1 = '234dfgh4hg'
print(num1.rfind('4', 3))

# 34rindex(str1,start,end):查找字符串在范围内中str1出现的最后一个位置,start和end表示范围(默认为0或者len(字符串)),如果str1不在字符串中,系统会报错
num1 = '234dfgh4hg'
print(num1.rindex('4', 3))

# rpartition(str1):将字符串在str1出现的最后一个位置,将字符串以str1以为中心切割成,字符串左边和str1,以及字符串右边的元组
num1 = 'how are you? i am fine ,thank you.'
print(num1.rpartition('you'))

# split(str1,N):将字符串以str1为切割点切割到第N个切割点(N默认为全部)
num1 = 'asd3gh3fg3'
print(num1.split('3'))

# rsplit(str1,N):将字符串以从右到左的str1为切割点切割到第N个切割点(N默认为全部)
num1 = 'asd3gh3fg3'
print(num1.rsplit('3', 2))

# splitlines():将字符串中的换行符为切割点,切割成列表(默认为False,不保留换行符,改成True,则保留换行符)
num1 = 'how \nare you?\r i am \nfine ,thank you.'
print(num1.splitlines())

# startswith(str1,start,end):判断字符串在范围内是不是以str1为开头,start和end表示范围(默认为0或者len(字符串))
num1 = 'asd3gh3fg3'
print(num1.startswith('3', 3))

# swapcase():将字符串中的大写换成小写,小写换成大写
num1 = 'sffASJd'
print(num1.swapcase())

# title():将字符串中的字符标题化,并且至少有一个大写字母(每个英语单语首字母大写,其余字母小写
num1 = 'sdf3dsf5Affg'
print(num1.title())

# translate(table):通过maketrans转换的映射表将字符串中的字符转换
num1 = ' 1123jigugg456 '
# 将所有的'1'换成'一',将所有的'g'换成'G'-> '一一23jiGuGG456'
num2 = num1.maketrans('1g', '一G')
num3 = num1.translate(num2)
print(num3)

# upper():将字符串中的字母全部大写
num1 = 'cgggA'
print(num1.upper())

# zfill():将字符串右对齐,用0填充成width长度的字符串
num1 = 'rtty'
print(num1.zfill(9))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泥地进击的小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值