Crossin的编程教室

标题: 【求助】Crossin编程教室第33课 代码问题 [打印本页]

作者: nissorc    时间: 2019-12-9 10:45
标题: 【求助】Crossin编程教室第33课 代码问题
本帖最后由 nissorc 于 2019-12-9 10:48 编辑

各位大佬好,本人是python萌新,在Crossin编程教室学习代码的时候遇到一个问题,自己到网上查找了下也没能找到答案,希望能够得到解答。
编程环境:Macbook, Python 3.7.4, Pycharm
问题出处:      Crossin编程教室-python入门-第33课 《处理文件中的数据》
原代码:


以上代码是用来打开一个文件,计算文件中同学的学习成绩,求和之后再写入文件的代码。
但是在 得到学生总成绩之后,需要把它添加到一个list中,于是有了以下代码:
result.append(result)

然而这样编写,程序会报错,截图如下
PyCharm_2019-12-09 10-41-29.png

然后我尝试将它此行代码改为
list.append(result)
并将最上面的
result = []
改为
list = []
程序即可顺利运行
但是自己不明白是什么原因,求各位大佬解答,为什么输入原来的代码会报错,而我新定义一个list却不会报错

下面是自己整个程序的全部代码
PyCharm_123.png





作者: crossin先生    时间: 2019-12-10 14:33
原来例子里是 results,和 result 是两个不同的变量。你用同一个名字当然就出问题了。你现在改成list,就避免了这个问题。

另外,不建议用list这种内置类型作为变量名,会给你带来其他的问题
作者: nissorc    时间: 2019-12-10 16:24
crossin先生 发表于 2019-12-10 14:33
原来例子里是 results,和 result 是两个不同的变量。你用同一个名字当然就出问题了。你现在改成list,就避 ...

天…………原来如此,我没有注意细节。谢谢您啦~
作者: 风风魔王    时间: 2019-12-28 15:07
crossin先生 发表于 2019-12-10 14:33
原来例子里是 results,和 result 是两个不同的变量。你用同一个名字当然就出问题了。你现在改成list,就避 ...

sum也是内置函数呀,先生为什么直接用了
作者: crossin先生    时间: 2019-12-29 23:47
风风魔王 发表于 2019-12-28 15:07
sum也是内置函数呀,先生为什么直接用了

被你发现了,这个不是好习惯,当时写的时候忽视了……别学




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5