模块

1.搜索路径

import导入模块时,如果报importError:No module named XXX

说明解释器在搜索路径中没有找到对应模块。

sys.path可以查看搜索路径,而sys.path返回的是个列表,要想添加搜索路径,可以使用sys.path.append("D:\\")


模块_第1张图片

sys.modules可以查看当前导入了哪些模块,模块来自哪里,返回的是字典

2.名称空间和变量作用域

三个名称空间:local,global,build-ins

变量先在local找,找不到到global中找,再找不到就去build-ins中找

3.导入模块

import module1

import module2

也可以写成import module1,module2

导入顺序最好是:标准库>第三方库>自定义库

from module import name1,name2从指定模块中导入模块的属性

多行导入,加\:

from Tkinter import Tk, Frame, Button, Entry, Canvas, \

Text, LEFT, DISABLED, NORMAL, RIDGE, END

扩展import(as):

import module ad m

from module import as m1

4.导入到当前名称空间

模块module有变量var,使用from module import var,然后直接通过var访问变量本身。

尽量少用from module import *,因为很可能会覆盖现有的名字

5.目录结构

Phone/

             __init__.py

             common_util.py

             Mobile/

                      __init__.py

                       Analog.py

第一种:

from Phone import Mobile

Mobile.Analog.dial("555-1212")

第二种:

from Phone.Mobile import Analog

Analog.dial('555-1212')

第三种:

from Phone.Mobile.Analog import dial

dial('555-1212')

6.阻止属性导入

如果不希望通过from module import *的方式导入属性,在属性前加_

你可能感兴趣的:(模块)