python - 为什么 list_a = list_a.append(1) 会产生 NoneType 而不是通过错误?

标签 python

如果这会弹出一个错误,作为一个Python新手,我不需要整整一个小时来找出我的错误!

所以我想问一下这个机制的考虑和好处是什么?

最佳答案

append()是列表上的一个方法,它只是将一个项目添加到列表的末尾并且不返回任何内容。换句话说,它“就地”修改列表:

>>> l = [1,2,3]
>>> type(l)
<type 'list'>
>>> l = l.append(4)
>>> print l
None
>>> type(l)
<type 'NoneType'>

并且,由于 NoneType 实际上是 a valid and perfectly normal variable typel 变为 None,没有任何错误 - 只需将其视为 l = None

希望有帮助。

关于python - 为什么 list_a = list_a.append(1) 会产生 NoneType 而不是通过错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22432849/

相关文章:

Python 数组内存占用与列表

python - python Flask 形式的所有链接的行为都类似于提交

python - 列表小部件项数据对象上的槽从未被调用(在 PyQt 5.7 中)

python - MySQL : BLOB/TEXT column 'id' used in key specification without a key length"的 Django 迁移错误

python - 上传Python第三方库

python - 如何将掩码应用于张量并保持其原始形状

python - 使用加权多点定位寻找未知点

python - 我将图片转换为 GIF 但 turtle 的 bgpic() 仍然无法正常工作

python - '#!/usr/bin/python' 在每个 Python 脚本前面是必须的吗?

python - 使用 if else 逻辑应用函数修改多列