请教19讲动动手作业
def count(*param):length = len(param)
for i in range(length):
letters = 0
space = 0
digit = 0
others = 0
for each in param:
if each.isalpha():
letters += 1
elif each.isdigit():
digit += 1
elif each == ' ':
space += 1
else:
others += 1
print('第 %d 个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1, letters, digit, space, others))
count('I love fishc.com.', 'I love you, you love me.')
麻烦哪位帮忙讲解下,中段没有理解,谢谢了。 本帖最后由 liuzhengyuan 于 2020-5-8 17:46 编辑
对元组中的每个字符串一一枚举
如果 each 是字母 letters + 1
如果 each 是数字 digit + 1
如果 each 是空格 space + 1
如果 each 是其他 others + 1
最后使用 格式化 输出 liuzhengyuan 发表于 2020-5-8 17:41
对元组中的每个字符串一一枚举
如果 each 是字母 letters + 1
明白了。
还想问下 for each in param 收集参数加是什么意思,脑子里有想法,但是不确定有点模糊。 本帖最后由 liuzhengyuan 于 2020-5-8 17:53 编辑
学习boy123 发表于 2020-5-8 17:49
明白了。
还想问下 for each in param 收集参数加是什么意思,脑子里有想法,但是不确定有点模糊。
前面加一个“*”,表示参数是一个列表或元组
for each in param 就是迭代
每第 n 次循环 ,each 就会是 param 第 n 个参数的值
for i in ['a', 'b', 'c']:
第一次 each = 'a'
第二次 each = 'b'
……
满意那就设一个【最佳答案】吧~{:10_254:} liuzhengyuan 发表于 2020-5-8 17:52
前面加一个“*”,表示参数是一个列表或元组
for each in param 就是迭代
每第 n 次循环 ,each 就会 ...
明白了,收集参数原来也可以是列表,谢谢。
页:
[1]