
原始代码: def total(a=5, *numbers, **phonebook): print('a', a)
#遍历元组中的所有项目 for single_item in numbers: print('single_item', single_item) #遍历词典中的所有项目 for first_part, second_part in phonebook.items(): print(first_part, second_part) print(total(10,1,2,3,Jack=1123,John=2231,Inge=1560))
输出: a 10 single_item 1 single_item 2 single_item 3 Jack 1123 John 2231 Inge 1560 None [Finished in 0.1s]
1.大能给详细解读下不? 2.我的输入答案的( Jack 1123 John 2231 Inge 1560 )与书上相反( Inge 1560 John 2231 Jack 1123 ),不知道为什么? 3.为什么输出最后会出现一个:None ? 4.如何在 sublime 中输入*,这种上标的星号?同样的操作,sublime 中是平行的星号。
1 264768502 2017-05-20 20:16:10 +08:00 via Android 2. 字典无序 3. 函数无指定返回,所以返回了 None 4. 目的何在? 想说的是字体? |
2 twitterpig OP @264768502 我自己再品味,品味。 --------------- *numbers, **phonebook 属于左上标的星号,但是我在 sublime 中输入显示的是* numbers,** phonebook, |
3 yexiaoxing 2017-05-20 20:32:18 +08:00 你多试几次就知道了,字典内部储存是 hash,无序的。 total 函数没有返回值,默认为 None。 检查一下你的输入法是不是开了全角符号之类的?如果开了输入法就关了吧。 |
4 twitterpig OP @yexiaoxing 谢谢你的回答,即使是这种平行的**,并不影响运行。~我再试一试~ |
5 billlee 2017-05-21 00:23:28 +08:00 * 那个是字体问题吧。。 |
6 ericls 2017-05-21 00:39:26 +08:00 via iPhone @yexiaoxing 3.6.1 有序 |
7 weyou 2017-05-21 11:09:24 +08:00 via Android 第一次听说“上标的”星号,还有“平行的”星号 |
8 twitterpig OP @weyou 555555555,你笑我? |
9 twitterpig OP @ericls 我确实用的是 3.6.1 版本的 Python。 |