首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么要“导入”Python标准库函数?

为什么要“导入”Python标准库函数?
EN

Stack Overflow用户
提问于 2013-11-30 22:29:16
回答 3查看 2.8K关注 0票数 10

我是Python编码新手,我来自PHP背景。我很好奇为什么您必须在python脚本的顶部“导入”函数。在PHP中,您可以简单地使用以下函数:

代码语言:javascript
复制
sleep(10);

上述情况将导致脚本休眠10秒。然而,要在python中做同样的事情,我似乎必须导入“time”功能:

代码语言:javascript
复制
import time
time.sleep(10)

我的问题是:为什么有必要这样做?如果这些额外的函数已经是python的一部分,为什么python必须专门加载它们?在PHP中,如果缺少一个模块,脚本就会失败。我必须在全球范围内安装这个模块,然后它就可以正常使用了。

python的方法有什么好处吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-30 22:35:16

是的,几个。这意味着默认情况下需要编译和运行的代码较少。您的程序将加载得更快,因为它只知道它实际需要的Python部分。

它保持全局命名空间的干净,并允许将功能逻辑地分组到模块中。不同的模块可以在没有冲突的情况下拥有同名函数(例如,文件和套接字类可能都具有打开和关闭函数)。

票数 9
EN

Stack Overflow用户

发布于 2013-11-30 22:35:24

那么,如果您想同时使用库A和库B以及一个名为f的函数怎么办?在Python中,这是非常容易的:导入这两个模块,然后用它的模块来限定正确的f名称,例如A.f()

这导致了第一个优势:名称空间(作为名称冲突问题的解决方案)和无污染的全局范围。

第二个优点是更灵活的模块系统。

票数 4
EN

Stack Overflow用户

发布于 2013-11-30 23:01:33

但是您不需要导入像"print()“或”But ()“这样的函数。这些功能已经为您提供了。其他的不一定需要,所以它们位于其他地方,这就是为什么您导入包含默认不提供的函数的模块

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20306373

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档