返回介绍

import 和 from 是赋值语句

发布于 2024-01-29 22:24:16 字数 791 浏览 0 评论 0 收藏 0

就像def一样,import和from是可执行的语句,而不是编译期间的声明,而且它们可以嵌套在if测试中,出现在函数def之中等,直到执行程序时,Python执行到这些语句,才会进行解析。换句话来说,被导入的模块和变量名,直到它们所对应的import或from语句执行后,才可以使用。此外,就像def一样,import和from都是隐性的赋值语句。

·import将整个模块对象赋值给一个变量名。

·from将一个或多个变量名赋值给另一个模块中同名的对象。

我们谈过的关于赋值语句方面的内容,也适用于模块的读取。例如,以from复制的变量名会变成对共享对象的引用。就像函数的参数,对已取出的变量名重新赋值,对于其复制之处的模块并没有影响,但是修改一个已取出的可变对象,则会影响导入的模块内的对象。为了解释清楚,思考一下下面的文件small.py。

此处,x并不是一个共享的可变对象,但y是。导入者中的变量名y和被导入者都引用相同的列表对象,所以在其中一个地方的修改,也会影响另一个地方的这个对象。

对于赋值语句和引用之间的图形关系,可以重新查看图18-1(函数参数传递),只要在心中把“调用者”和“函数”换成“被导入模块”和“导入者”即可。实际效果是相同的,只不过我们现在面对的是模块内的变量名,而不是函数。在Python中,赋值语句工作起来都是一样的。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文