首页 >后端开发 >Python教程 >为什么 Python 的就地列表方法不返回任何值?

为什么 Python 的就地列表方法不返回任何值?

Susan Sarandon
Susan Sarandon原创
2024-12-28 22:22:16697浏览

Why Do Python's In-Place List Methods Return None?

为什么 Python 的变异列表方法不返回任何内容?

许多 Python 列表方法,包括追加、排序、扩展、删除、清除和反之,修改列表后返回None。这种设计选择引发了对其基本原理和潜在缺点的质疑。

根据 Python 的设计原则,就地改变对象的函数应该返回 None。这强调了操作是在现有对象上执行的,而不是创建一个新对象。

Python 的创建者 Guido van Rossum 解释了这一决定背后的原因:

  • 链接端-不鼓励对单个对象产生影响,因为它会使代码难以阅读。
  • 在 return 语句中使用 None 有助于阐明这些方法仅修改

虽然有些人可能会认为这种设计阻碍了列表处理的“链接”,但 Rossum 认为它增强了代码的可读性,并明确了后续操作应用于同一个对象。

他将此与返回新值的链接操作进行对比,例如他认为适合的字符串处理操作

总之,从 Python 的变异列表方法返回 None 的决定是基于区分就地修改对象的操作和返回新值的操作的设计原则。

以上是为什么 Python 的就地列表方法不返回任何值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn