字符串常用函数
在程序开发中,字符串经常需要被处理,例如求字符串的长度、大小写转换等。如果每次处理字符串时,都编写相应的代码,那么开发效率会非常低下,为此Python提供了一些内置函数可以处理字符串常见的操作。
大小写转换
Python中涉及字符串大小写转换的函数,如下表所示。
函数 | 说明 |
---|---|
upper() | 转换字符串中所有小写字母为大写 |
lower() | 转换字符串中所有大写字母为小写 |
上述两种方法都返回一个新字符串,其中的非字母字符保持不变。如果需要进行大小写无关的比较,则这两个函数非常有用。接下来演示其用法,如下所示。
1 name = "sunyuyu" # 假设用户名为sunyuyu
2 str = input("请输入用户名(不区分大小写):")
3 if str.lower() == name:
4 print("欢迎用户%s登录"%name)
5 else:
6 print("用户名错误")
运行结果如下图所示。

在上例中,当程序运行时,用户通过键盘输入SunYuyu。第3行将字符串str通过lower()函数转换为小写并与name进行比较,如果相等,登录成功,否则登录失败。
判断字符
Python中提供了判断字符串中包含某些字符的函数,这些函数在处理用户输入的字符串时是非常方便。这些函数都是以is开头,如下表所示。
函数 | 说明 |
---|---|
isupper() | 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回True,否则返回False |
islower() | 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回True,否则返回False |
isalpha() | 如果字符串至少有一个字符并且所有字符都是字母,则返回True,否则返回False |
isalnum() | 如果字符串至少有一个字符并且所有字符都是字母或数字,则返回True,否则返回False |
isdigit() | 如果字符串只包含数字,则返回True,否则返回False |
isspace() | 如果字符串中只包含空白,则返回True,否则返回False |
istitle() | 如果字符串是标题化的,则返回True,否则返回False |
接下来演示这些函数的基本用法,如下所示。
1 print("sunyuyu".islower()) # True
2 print("sunYuyu".islower()) # 小写字母中有大写字母
3 print("sunyuyu6666".islower()) # True
4 print("SUNYUYU".isupper()) # True
5 print("SUNyuYU".isupper()) # 大写字母中有小写字母
6 print("SUNYUYU6666".isupper())# True
7 print("sunyuyu6666".isalpha()) # 包含数字字符
8 print("sunyuyu6666".isalnum()) # True
9 print("sunyuyu6666".isdigit()) # 包含字母字符
10 print(" \t\n".isspace()) # True
11 print("Title".istitle()) # True
运行结果如下图所示。

在上例中,这些函数的返回值都为布尔值。接下来演示使用这些函数验证用户输入的密码是否符合要求格式,如下所示。
1 while True:
2 pwd = input("请输入您的密码(必须包含数字与字母):")
3 if pwd.isalnum() and (not pwd.isalpha()) and (not pwd.isdigit()):
4 print("您的密码为%s"%pwd)
5 break
6 else:
7 print("重新输入!")
运行结果如下图所示。

在上例中,程序通过循环判断用户输入的密码,其中必须包含数字与字母。从程序运行结果可看出,当输入的密码包含数字和字母时,程序才会退出循环;否则,一直提示用户输入密码。
网友评论