04 Python常用字符串函数

以下是python常用字符串函数,五个“*”是经常要用的,需要我们掌握。先做总结,之后代码验证。

 upper():将字符串字母全部转换为大写字母     应用:可以用做验证码验证    *****
 lower():将字符串字母全部转换为小写字母    应用:可以用做验证码验证     *****
 find():通过元素找索引,找到第一个就返回;没有找到返回-1.  *****
 index():通过元素找索引,找到第一个就返回;没有找到就报错.  *****
 strip():默认去除字符串前后(中间的不会)的空格,换行符,制表符,也能去除指定的符号。*****
 lstrip():只去除前面的,用法和strip()一样。*****
 rstrip():只去除后面的,用法和strip()一样。*****
 split():将字符串分隔成列表str-->list) 默认按照空格分隔 *****
 join():自定制连接符,将可迭代对象中的元素连接起来 *****
 replace():字符串替换,能够设置替换次数。*****
 startswith():判断字符串以xx开头,也能判断字符串某部分以xx开头;结果返回True,False **** 
 endswith():判断字符串以xx结尾,也能判断字符串某部分以xx结尾;结果返回True,False **** 
 capitalize():首字母大写,其余变成小写 *** 
 center():字符串居中前后填充自定义的字符,有参数。**
 swapcase():字符串字母大小写转换。 ** 
 title():非字母隔开的每个部分的首字母大写 **

接下来就是贴上代码,后面注释是运行结果。

  • upper():将字符串字母全部转换为大写字母
str = 'hello-Python'
print(str.upper())  #HELLO-PYTHON
  • lower():将字符串字母全部转换为小写字母
str = 'hello-Python'
print(str.lower())  #hello-python
  • find():通过元素找索引,找到第一个就返回,没有找就返回-1
str = 'hello6world$python'
print(str.find('l'),str.find('o',5,-1))# 2,7 (虽然切片-1是表示从最后一个开始,但是不包含最后一个。)
  • index():与find()类似,只不过没有找到就报错
str = 'hello6world$python'
print(str.index('z'))  #报错,没有找到 ValueError: substring not found
  • strip():默认去掉前后的空格、制表符、换行符;也能去掉指定符号
str = '\t hello python\n '
print(str.strip())  #hello python  去除了前面的制表符、空格以及后面的换行

str2 = 'zhepython hello worldze'
print(str2.strip('hez') ) # python hello world 把前后有hez的字符全部去掉了
'''举例,用户登录输入的时候,如果用户输入密码时,不小心按了一个空格,然后再输入密码
        最后导致登录时密码错误。那么这个时候可以用strip()方法去掉前后空格,
        就不需要让用户重新输入了,提高用户体验。
lstrip():只去除前面的,用法和strip()一样。可以自己试试
rstrip():只去除后面的,用法和strip()一样。可以自己试试
'''
 password = input("请输入密码:").strip()
  • split():将字符串分隔成列表,默认按空格分隔,可指定分隔符
str = '张三 李四 王五 赵六'
print(str.split()) # ['张三', '李四', '王五', '赵六']
str2 = 'This#is#python'
print(str2.split("#"))#['This', 'is', 'python']

       另外,split()有一个bug,假如字符串s=" zh us en",首个字符是空格,如果用默认的split()分隔,只分隔三个元素,如果按照空格分隔,最后会有四个元素;但是我们都知道,split()默认按照空格分隔。

str3 = ' zh us en' #字符前面有一个空格
print(str3.split()) # ['zh', 'us', 'en'] 默认分隔(默认是以空格分隔的) 3个元素
print(str3.split(" ")) # ['', 'zh', 'us', 'en'] 以空格进行分隔 4个元素
#限制分隔次数,次数+1 = 元素个数
print(str3.rsplit(' ',2)) #[' zh', 'us', 'en'] 从右到左分隔
print(str3.split(' ',2)) #['', 'zh', 'us en'] 从左到右分隔
  • join():自定制连接符
str = 'python'
print('-'.join(str)) #p-y-t-h-o-n
  • replace():字符串替换,可设置替换次数
str = '我现在在学Python,我昨天才开始学,我...'
print(str.replace('我','你')) #把“我”替换为“你”,全部替换
print(str.replace('我','你',2)) #把“我”替换为“你”,替换两次。
  • startswith():判断字符串以xx开头,或者是字符串某段以xx开头;结果返回True或者False
  • endsith():判断字符串以xx结尾,或者是字符串某段以xx结尾;结果返回True或者False
str = 'hello-Python'
print(str.startswith('hell'),str.startswith('ll',2,5)) #True True
print(str.endswith('n'),str.endswith('th',7,10))    #True  True
  •  capitalize():首字母大写,其余字母小写
  •  center():字符串居中后,前后填充自定义字符
str = 'hello-Python'
print(str.capitalize()) #Hello-python
print(str.center(25,'*'))# *******hello-Python****** 把整个字符串长度变成25,其它地方用自定义“*”填充
  • title():非字母隔开的每个首字母大写,空格,数字,特殊符号后面的一个字母大写
str = 'hello6world$python'
print(str.title())  #Hello6World$Python
  • swapcase():将字符串里面的字母大写转换为小写,小写转换为大写
str = 'hello-Python'
print(str.swapcase()) #HELLO-pYTHON

上面就是Python常用字符串函数,如果还想学习其它的字符串函数,我们可以去官网查看Python的文档。

-----------------------------------------------------------------------------------------------------------------------------------------

20191220增加

is系列

  • isalnum():判断字符串是否有数字或者字母组成  True/False
  • isdigit():判断字符串是否全部由数字组成 True/False
  • isalpha():判断字符串是否全部由字母组成 True/False
name = 'taobao'
num = '12325'
print(name.isalnum()) #数字或字母组成 True
print(num.isdigit()) #判断全部是由整数组成 True
print(name.isalpha()) #判断字符串全部由字母组成 True
  • len():统计字符串中字符个数,包括空格。
  • count():统计字符串中字符出现的个数,有切片。
name = 'python hello'
print(name.count('o')) # 2  有切片,可以指定字符个数
print(name.count('o',0,-2)) #1
print(len(name)) #字符串字符的个数 12 包括空格

最后来一段字符串循环输出

  • while循环输出字符串
count = 0
s1 = 'abcdefg'
while  count < len(s1):
    print(s1[count])
    count += 1

运行结果:

  • for循环输出字符串
str = 'abcdefg'
for i in str:
    print(i)

运行结果:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值