为什么不用elif会导致打印结果中其他字符(others)的个数不对
本帖最后由 fightclub 于 2022-9-2 21:38 编辑def count(*param):
num = 1
for each in param:
letter = 0
digit = 0
space = 0
others = 0
for i in range(len(each)):
if each.isspace():
space += 1
if each.isdigit():
digit += 1
if each.isalpha():
letter += 1
else:
others += 1
print('第%d个字符串共有:英文字母%d个,数字%d个,空格%d个,其他字符%d个。'%(num,letter,digit,space,others))
num += 1
count('I love fishc.com.','I love you, you love me.') 本帖最后由 tommyyu 于 2022-9-2 21:40 编辑
if each.isspace():
space += 1
if each.isdigit():
digit += 1
if each.isalpha(): #只有这个条件不满足的时候,才会执行 else 语句,所以应该用elif,这样才可以在三个条件都不满足的时候才执行else语句
letter += 1
else:
others += 1 tommyyu 发表于 2022-9-2 21:39
哦哦我懂了,谢谢你{:5_109:}
页:
[1]