TLDR:如果您认为Python的global
不好,我完全同意您的看法。我想知道的是为什么 global
首先存在。
我的故事:前几天,我的一位CS-101学生在他的Python函数中提出了global
语句,并随后重新分配。他只是忘记了他实际需要的一个关键字:return
。以及如何传递参数。在帮助他纠正错误后,我确保他个人从未在我自己的课程中感受到global
的需要。
现在,我鼓励我的学生阅读文档,而这一次,恕我直言,这是伟大的。但说实话,我更倾向于用我最喜欢的教学语言找不到global
。但它确实存在in Python 2并且仍然存在in Python 3。
显然,Guido比我更聪明。当他认为需要在Python中包含global
时,他肯定有非常好的,深刻的理由去做。有人能指出我的引入/保护(PEP)的官方理由吗?或者提供一些客观的,普遍承认的合法用例?