为什么python使用模块,而不是仅仅包含主语言中的模块函数.这将是非常有用和非常简单的,特别是对于诸如random,re和os之类的主要内容.如果Python宣扬简单和极简主义,为什么还要编写额外的代码行?
Li-*_*Yip 15
1)Python的禅#19:"命名空间是一个很好的主意 - 让我们做更多的事情吧!"
命名模块很好,因为它们消除了具有相同名称的函数之间发生冲突的可能性.如果一切都是内置的,那么os.error()就会碰撞logging.error()(并且天堂禁止你尝试定义你自己的函数error()!)
同上内置int()函数和random.int()函数.您必须将后者编写为random_int(),这与模块语法一样多.为什么不明确命名空间并使用模块?
这与语法from os import *不受欢迎的原因相同- 它会污染您的命名空间并引入令人兴奋的名称冲突错误的机会.
2)谁决定什么是内置和什么是模块?
您亲自编写的大多数程序都涉及os和re.个人每次我写在过去三个月脚本已介入sqlite3,csv和logging.是否应将这些内容包含在任何Python程序员编写的每个程序中?
过了一会儿,你的内置列表比Ben Hur要大.