返回介绍

from* 会让变量语义模糊

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

之前提到过这些内容,但把细节留在这里描述。使用from module import*语句形式时,因为你不会列出想要的变量,可能会意外覆盖了作用域内已使用的变量名。更糟的是,这将很难确认变量来自何处。如果有一个以上的被导入文件使用了from*形式,就更是如此了。

例如,如果在三个模块上使用from*,没有办法知道简单的函数调用真正含义,除非去搜索这三个外部的模块文件(三个可能都在其他目录内)。

解决办法就是不要这么做:试着在from语句中明确列出想要的属性,而且限制在每个文件中最多只有一个被导入的模块使用from*这种形式。如此一来,任何未定义的变量名一定可以减少到某一个from*所代表的模块。如果你总是使用import而不是from,就可完全避开这个问题,但这样的建议过于苛刻。就像其他大多数程序设计中,如果合理使用的话,from也是一种很方便的工具。

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

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

发布评论

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