python——命名冲突

from … import... 语句

Python 除了可以从当前环境目录导入模块外,还可以从当前环境的目录中导入其中的模块。

Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中。

其中,folder_name 指代当前环境下的文件夹名称,module_name 指代该文件夹下的 Python 模块(文件)语法如下:

from folder_name import module_name

import module

Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和 Python 语句。

模块能让你能够有逻辑地组织你的 Python 代码段。把相关的代码分配到一个模块里能让你的代码更好用,更易懂。

此外,模块能定义函数,类和变量,模块里也能包含可执行的代码。如下所示:

import module

from … import * 语句

把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:

from modname import *

这将把所有的名字都导入进来,但是那些由单一下划线(_)开头的名字不在此例。

  1. import module
    这会将对象(这里的对象指的是包、模块、类或者函数,下同)中的所有内容导入。如果该对象是个模块,那么调用对象内的类、函数或变量时,需要以 module.xxx 的方式。
  2. from ... import ...
    从某个对象内导入某个指定的部分到当前命名空间中,不会将整个对象导入。这种方式可以节省写长串导入路径的代码,但要小心名字冲突。
  3. from ... import *
    将对象内的所有内容全部导入。非常容易发生命名冲突,请慎用!

from ... import ... as rename

为了避免命名的冲突,因为有可能会存在相同的模块名相同的类名或者相同的函数名,通常会采用重命名的方式。

猜你喜欢

转载自blog.csdn.net/qq_55858843/article/details/127788562