Python 程序执行方式全解析
1. 模块与命名空间
在 Python 中,模块是编写程序时的重要概念。一般来说,Python 程序由多个模块文件通过 import 语句连接而成。每个模块文件都是一个独立的变量包,也就是一个命名空间。不同模块间的命名相互独立,一个模块无法直接看到另一个模块中定义的名称,除非显式导入该模块。这就避免了代码中命名冲突的问题,即使不同文件中有相同的名称,也不会相互冲突。
模块是 Python 划分变量以避免命名冲突的方式之一。除了模块,还有其他命名空间的构造(如类和函数作用域)。目前,模块可以让我们多次执行代码而无需重复输入,也能防止文件名称意外被覆盖。
在使用模块时, import 和 from 语句有所不同。 from 语句在某种程度上会消除模块带来的命名空间划分,因为它会将变量从一个文件复制到另一个文件,可能会悄无声息地覆盖导入文件中同名的变量。因此,一些用户建议使用 import 语句而非 from 语句。不过, from 语句书写更简便,在交互式会话中是一个很大的优势,而且这种潜在问题在实际中并不常见,我们也可以通过指定变量来控制。
另外,在使用 import 和 reload 语句执行文件时,很多人会只关注这种方式而忽略其他执行选项(如点击图标、使用 IDLE 环境菜单选项、系统命令行),这可能会导致混乱。使用 reload
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



