模块

作者: 苏柏娜 | 来源:发表于2016-11-18 16:42 被阅读6次

    1.搜索路径

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

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

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

    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 *的方式导入属性,在属性前加_

    相关文章

      网友评论

          本文标题:模块

          本文链接:https://www.haomeiwen.com/subject/yefspttx.html