1.函数名及其来源
lower() 函数命名来源英文lower(小写)
相关函数upper()来源英文upper(大写)
用于转换字符串的大小写
例子:
>>>str = "THIS IS STRING EXAMPLE....WOW!!!"
>>>print(str.lower())
this is string example....wow!!!
复制代码
还有用于判断大小写的:
如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
islower()
isupper()
>>>str = "THIS is string example....wow!!!";
>>>print(str.islower())
False
复制代码
2.函数定义源码及其用法拆解
str.lower()
复制代码
用途:
应为用户的输入大小写不可控,除了密码等少数需要严格区分大小写的场景,大多数情况我们要对大小写做兼容,减少用户的使用成本(同时还需要自动过滤掉首尾空格等无效字符)
至于需要统一转大写还是转小写,则取决于系统的设计,并无统一范式。
比如我们统一将用户输入的用户名转换为小写
username = input('plear enter your username:')
username = username.lower()
复制代码
其他类似判断方法:
isdigit(): 字符串中至少有一个字符且如果所有字符都是数字,那么返回结果就是True;否则,就返回False
S1 = '12345' #纯数字
S2 = '①②' #带圈的数字
S3 = '汉字' #汉字
S4 = '%#¥' #特殊符号
print(S1.isdigit())
print(S2.isdigit())
print(S3.isdigit())
print(S4.isdigit())
# 执行结果:
True
True
False
False
复制代码isalpha() :字符串中至少有一个字符且如果所有字符都是字母,那么返回结果就是True;否则,就返回False
S1 = 'abc汉字' #汉字+字母
S2 = 'ab字134' #包含数字
S3 = '*&&' #特殊符号
print(S1.isalpha())
print(S2.isalpha())
print(S3.isalpha())
#执行结果
True
False
False
复制代码
判断是否纯英文:
>>>word = 'abc汉字'
>>>word.encode( 'UTF-8' ).isalpha()
False
复制代码isalnum() 字符串中至少有一个字符且如所有字符都是字母数字,那么返回结果就是True;否则,就返回False
S1 = 'abc汉字1' #字母+汉字+数字
S2 = '①②③' #带圈的数字
S3 = '%……&' #特殊符号
print(S1.isalnum())
print(S2.isalnum())
print(S3.isalnum())
#执行结果
True
True
False
复制代码
3.版本差异
无版本差异
4.学习建议
在编程世界里有个不成文的约定:"用户的输入都是不可靠的"。
也就意味着你不能指望用户按照既定的提示输入符合要求的字符。
所以这些对输入变量的判断函数就显得尤为重要。