Kent66 发表于 2020-6-3 18:36:04

小白没懂这题,可以麻烦大家详细讲解一下吗?谢谢啦


Twilight6 发表于 2020-6-3 18:36:05

本帖最后由 Twilight6 于 2020-6-3 18:46 编辑

参数如果带一个 * 号 则是不确定 参数个数,可以填入任意个参数个数,然后把这些参数变成一个元组

length = len(param)是为了统计参数个数,以便于第一个for循环可以依次取出参数拿来循环遍历

第一个for 循环 实际上就是循环 param 的位置参数,从 0 ~ len(param)-1

下面四个参数等于 0 的参数是为了初始化数据为后续统计字符类型做准备

第二个for循环就是循环遍历第一个for循环遍历到的参数的字符串

isalpha() 判断 each 是否为字母

isdigit() 判断 each 是否为数字

each == ' ' 判断是否为空格

最后的判断是否其他字符

满足以上条件则对应的 上面四个初始化的变量数量 +1

最后循环结束 打印结果

Kent66 发表于 2020-6-3 18:53:44

Twilight6 发表于 2020-6-3 18:45
参数如果带一个 * 号 则是不确定 参数个数,可以填入任意个参数个数,然后把这些参数变成一个元组

lengt ...

你好,第二个for上面明白了,但是第二个for里的param的i是什么呀?
还有最后print里面的后面,%(i+1,letters,digit,space,others)是什么意思啊?
可以再讲一下吗?

Twilight6 发表于 2020-6-3 18:58:50

Kent66 发表于 2020-6-3 18:53
你好,第二个for上面明白了,但是第二个for里的param的i是什么呀?
还有最后print里面的后面,%(i+1 ...

i 就是第一个for 循环的位置参数
就假设你传入 3 个参数a,b,c 吧则 param=(a,b,c)

则 length = 3

所以for i in range(3)第一次for 循环 i = 0

则到了 第二个for 循环时候 param 因为 i = 0 则 param =param = a
同理得 若第一个循环到了 i = 1 则 param = param = b
以此类推 i = 2 时候 param = param = c

这就是普通的索引操作而已

Kent66 发表于 2020-6-3 19:06:44

Twilight6 发表于 2020-6-3 18:58
i 就是第一个for 循环的位置参数
就假设你传入 3 个参数a,b,c 吧则 param=(a,b,c)



那下面的print里的%后面的是什么意思?{:5_99:}

Twilight6 发表于 2020-6-3 19:22:39

Kent66 发表于 2020-6-3 19:06
那下面的print里的%后面的是什么意思?

% 是格式化的意思呀,你跳集了嘛....

%d 是格式化整型
把 %d 替换成后面对应的 整型参数

Kent66 发表于 2020-6-3 19:26:36

本帖最后由 Kent66 于 2020-6-3 19:28 编辑

Twilight6 发表于 2020-6-3 19:22
% 是格式化的意思呀,你跳集了嘛....

%d 是格式化整型


print('第 %d 个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1, letters, digit, space, others))
不是的,我指的不是前面的%d,我指的是% (i+1, letters, digit, space, others))是什么意思啊?他是解释的意思吗?

WangJS 发表于 2020-6-3 19:31:45

本帖最后由 WangJS 于 2020-6-3 19:36 编辑

Kent66 发表于 2020-6-3 19:26
print('第 %d 个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1, le ...

就是把括号里那些变量依次传到前面%d那里
老版视频的第15讲讲了{:10_250:}

(加粗!向大佬学习!)

Twilight6 发表于 2020-6-3 19:32:37

Kent66 发表于 2020-6-3 19:26
print('第 %d 个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1, lett ...

对啊这就是 % 格式化的格式啊 。。。。。。

Python 3种格式化使用方法

Twilight6 发表于 2020-6-3 19:33:12

WangJS 发表于 2020-6-3 19:31
就是把括号里那些变量一次传到前面%d那里
老版视频的第15讲讲了



{:10_266:}你别瞎捧我了

WangJS 发表于 2020-6-3 19:34:29

Twilight6 发表于 2020-6-3 19:33
你别瞎捧我了

怎么叫瞎捧呢,都资深鱼油了{:10_256:}

Twilight6 发表于 2020-6-3 19:35:12

WangJS 发表于 2020-6-3 19:34
怎么叫瞎捧呢,都资深鱼油了

{:10_266:}

Kent66 发表于 2020-6-3 19:37:27

Twilight6 发表于 2020-6-3 19:32
对啊这就是 % 格式化的格式啊 。。。。。。

Python 3种格式化使用方法

哦哦明白了,谢谢你

Twilight6 发表于 2020-6-3 19:40:47

Kent66 发表于 2020-6-3 19:37
哦哦明白了,谢谢你

没事学习不着急慢慢来,别学了后面忘了前面哦~加油吧

tysfz032 发表于 2020-6-6 09:00:47

点赞点赞(òó)
页: [1]
查看完整版本: 小白没懂这题,可以麻烦大家详细讲解一下吗?谢谢啦