isalpha()、isdigit()方法
问题
编写一个接受句子并计算字母和数字数量的程序。
假设将以下输入提供给程序:
hello world! 123
然后,输出应为:
LETTERS 10
DIGITS 3
提示:
如果将输入数据提供给问题,则应假定它是控制台输入。
程序
s = input()
d={"DIGITS":0, "LETTERS":0} #因为要分别按字母和数字去数数量,字母对应一个数量,数字对应一个数量,正好形成两个键值对
for c in s:
if c.isdigit():#检测字符串是否只由数字组成。
d["DIGITS"]+=1 #通过键访问并修改对应的值
elif c.isalpha(): #检测字符串是否只由字母组成
d["LETTERS"]+=1
else:
pass #对于非数字和非字母的字符直接跳过不做任何处理,刚开始编写这一部分的时候下意识的用了break,导致一旦循环到非字母和数字的情况就跳出了循环,后面的字符无法继续操作了,所以直接pass无视就好
print("LETTERS", d["LETTERS"])
print("DIGITS", d["DIGITS"])
isalpha()和isdigit()方法用法
1、isalpha()方法
检测字符串是否只由字母组成。
语法:str.isalpha()
如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。注意哦,这个括号里是没有参数的。
2、 isdigit()方法
检测字符串是否只由数字组成。
语法:str.isdigit()
如果字符串只包含数字则返回 True 否则返回 False。注意哦,这个括号里是没有参数的。
isupper()、islower()方法
问题
编写一个接受句子的程序,并计算大写字母和小写字母的数量。
假设将以下输入提供给程序:
Hello world!
然后,输出应为:
UPPER CASE 1
LOWER CASE 9
提示:
如果将输入数据提供给问题,则应假定它是控制台输入。
程序
a = input('请输入:')
b = {'UPPER CASE':0, 'LOWER CASE':0}
for i in a: #和上一个问题方法相同,但根据检查的对象不同改变了调用的方法
if i.isupper():
b['UPPER CASE'] += 1
elif i.islower():
b['LOWER CASE'] += 1
else:
pass
print('UPPER CASE', b['UPPER CASE'])
print('LOWER CASE', b['LOWER CASE'])
isupper()和islower()方法用法
1、isupper()方法
检测字符串中所有的字母是否都为大写。
语法:str.isupper()
如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False。注意哦,这个括号里是没有参数的。
2、islower()方法
检测字符串是否由小写字母组成。
语法:str.islower()
如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False。注意哦,这个括号里是没有参数的。