最新回答 / crystal叶子
L=range(0,101) 左括号应该用英文状态下的;sum=0 应该写在循环体外吧 不然每次for循环时,sum都被重置为0了;L取的是range(0,101) 所以if i<=100 是多余的
2018-07-31
最赞回答 / 十Way
因为一般来说我们都是要先对条件值进行判断的,这样才能确保后面的运算不会出错,但是由于这道题其实不算太严谨所以才会前后结果一样,这里的条件临界值是20,但是n的初始值是1所以不管if放在前面还是后面,它都还是会进行第一次运行,直到n>20。但是如果n的初始值是21的话,if在前面,就会直接跳出循环,if放在后面的话它就会进行一次运算然后当n=22才跳出循环,而且由于n不参与运算,所以对运算结果不产生直接影响,所以这里前后都可以
2018-07-30
最赞回答 / 韩好好
首先+号可以将字符串拼接起来,比如 print 'a' + 'b',结果为ab,再比如print 'a' + '1',结果为a1需要注意的是'1'是字符串,不是数值,比如'a' + 1是会报错的。其次,逗号','与'+'加号效果是不同的。print语句中遇到逗号会输出空格,比如print 'a','b',结果为a b
2018-07-30
最新回答 / 幕布斯3098317
如果L.pop(0) 表示删除序列的第一个值,返回结果是第一个值,且序列L已经发生变化 序列的赋值X=L 的操作跟C语言一样 有点类似指针操作,是赋值指向位置 不是赋了值 所以只有一个序列变化 都变化
2018-07-30
最赞回答 / 方大源
相当于把L里面元素循环取出来给name,这个name自定义的 可以是啊,可以是b,随便你定义。0,1,2是下标,不用循环 直接L[0]取第一个元素,或者切片L[:3],表示取前三个元素
2018-07-30
最赞回答 / 十Way
放在前面就是为了确保sum+x中的x最大只能到99,但是如果你把x=x+2放在前面,x就可以到101了,这样sum就不是1~99的100的奇数和,而是3~101奇数的和了,所以结果才会比答案的多了100
2018-07-29
最赞回答 / qq_囚_8
可以直接写for index, name in t:因为enumerate的用处就是把list变成索引从0开始的tuple而zip也是变成tuple,如果再次使用enumerate(t),那么name就变成了zip出来的tuple,也就是t,会出现以下结果:
0 - (1, 'Adam') 1 - (2, 'Lisa') 2 - (3, 'Bart') 3 - (4, 'Paul')
2018-07-29