python字符串相关的方法(七)

#一、字符串相关的方法

1.isdigit、isalpha、isalnum

isdigit:判断字符串是不是一个数字字符串,返回True或False
isalpha:判断字符串是不是一个字母字符串,返回True或False
isalnum:判断字符串是否是数字字符串或字母字符串或数字-字母字符串,返回True或False

str1 = '12345'
str2 = 'abcde'
str3 = 'abc123'
str4 = 'abc123...'
# True False False Fals
print(str1.isdigit(), str2.isdigit(), str3.isdigit(), str4.isdigit())
# False True False False
print(str1.isalpha(), str2.isalpha(), str3.isalpha(), str4.isalpha())
# True True True False 
print(str1.isalnum(), str2.isalnum(), str3.isalnum(), str4.isalnum())
  1. 对齐:ljust、rjust、center等价于<、>、^
str5 = '分隔符'
print(str5.center(10, '*')) #***分隔符****
print(str5.ljust(10, '*'))#分隔符*******
print(str5.rjust(10, '*'))#*******分隔符
  1. startswiht、endwith:验证字符串首字母或结尾是否符合要求
tel = '1234569877'
print(tel.startswith('123'))
print(tel.endswith('2222'))
  1. str():构造语法:将其他数据类型转为字符串
for i in range(1,1000):
    # print(str(i),type(str(i)))
    lenght = len(str(i))
    # print(lenght)
    numsum = 0
    for j in str(i):
        numsum += int(j)**lenght
    if numsum  == i:
        print(f'{i}是阿姆斯特朗数')
  1. split :切割,将字符串按照指定的符号进行切割,没有被切掉的元素被添加到一个列表中
str1 = '123,000'
list1=str1.split(',')
print(list1)
  1. join():按照指定的间隔符将容器中的字符串拼接到一起,(前提:容器中所有元素必须都是字符串)
str2 = '+'.join(list1)
print(str2)
str3 = ''.join(list1)
print(str3)
  1. replace :替换,将字符串替换到旧字符串的位置
    字符串.replace(oldstr,newstr,替换次数(不写表示全部))
str1 = '123,100'
print(str1.replace(',', ''))
print(str1.replace('0', '+', 1))
  1. strip():默认将字符串两端的空白符号去掉(空白符包括:空格、换行等)
    strip()可以指定去除字符串两端的哪些符号
str1 = '\n  ab\tcd \n'
print(str1)
print('*'*24)
print(str1.strip())
print('*'*24)
print(str1.strip(''))
print('*'*24)

手机号、身份证、银行卡号等不需要参与计算的数字符号作为字符串存储。

tel = '1478523699'
print(tel.replace(tel[3:7], len(tel[3:7]) * '*'))

王者荣耀屏蔽不文明用语原理。
1.人为收集不文明用语。“卧槽”、“臣卜木曹”
2.根据玩家输入的一句话去识别。
3.检测到,进行*替换,将替换完的结果输出

list1 = ['卧槽', '臣卜木曹']
content = '卧槽,你可真菜,菜鸡!!!'
for i in list1:
    content = content.replace(i,'*'*len(i))
print(content)

9.count、 index 、rindex、 find、 rfind

count:判断某个元素在字符串中出现的次数
ndex 、rindex
index:从左向右在字符串或者查找某个符号第一次出现的位置(下标);可以指定从哪个位置开始查找。
rindex:从右向左查找元素第一次出现的位置,返回正向下标,找不到报错。
find、 rfind
find:从左向右在字符串或者查找某个符号第一次出现的位置(下标);可以指定从哪个位置开始查找。
rfind:从右向左查找元素第一次出现的位置,返回正向下标,找不到返回-1。

content = '卧槽,你可真菜,菜鸡!!!'
print(content.index('菜'))
print(content.index('菜', 7))
print(content.rindex('菜'))
print(content.find('菜'))
print(content.find('菜', 7))
print(content.rfind('菜'))

#二、 转义字符

是字符串的一种,是具有特殊含义的字符串。
一、概念:在很久之前,转义字符是反斜杠\加上ASCII码表中的数字(一般是八进制数字)组成的有特殊含义的字符。
在C语言中规定反斜杠\加上ASCII码表中部分组成有特殊含义的字符,python使用的是C语言对应的形式。
二、常见的转义字符
\n:将鼠标光标移动到下一行开头。
\t:制表符tab键,能够对齐字符串,\t的宽度不一定为四个空格,\t的长度 = 8 - 字符串长度 % 8
\r:将鼠标光标移动到本行开头
‘、"、\ 表示没有特殊含义的’、"、\自身

str1 = 'ab\cd'

转义字符的长度?转义字符的长度为1

print(len('\n\t'))

操作系统:
mac、linux、Windows三大操作系统的换行符号各不相同。
Windows换行为\r\n
mac换行为换行\r
linux换行\n

str1 = 'ab\ncd'
print(str1)

使用\r实现进度条

from time import sleep

lenght = 50
print()
for i in range(lenght):
    # 进度条的空白槽
    a = (lenght - i) * ' '
    # 进度条的进度
    b = '*' * i
    print(f'\r|{b}{a}|', end = '')
    sleep(0.5)

#三、 原始字符串

一、在字符串前面添加r或者R,就被叫做原始字符串。
二、作用:将字符串中具有特殊含义的符号变得没有意义。

str1 = 'D:\\n.....'
str2 = r'D:\\n......'
print(str1)
print(str2)

应用场景:正则表达式、代码中引入文件路径等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值