模块

# 模块导入  ,应该写在文件开始的位置
    # 导入顺序
    # 先导入内置模块

    # 再导入扩展的 比如django

    # 再导入自定义的

# 同一个模块,在同一个文件中多次导入,只会导入一次

# import demo 导入模块:找到这个模块,创建这个模块的命名空间(demo),然后将模块的内容加载到了命名空间demo中
    # 当导入一个模块时,先去sys.modules里查看是否存在这个模块,查看是否已经被导入,如果没有被导入
    # 就根据sys.path路径取寻找模块,如果找到这个模块,就创建这个模块的命名空间,将模块的内容放入到
    # 命名空间中,模块的名字在sys.modules加入,然后导入这个模块。

#import sys
#print(sys.modules)  # 查看已导入的模块

# 给模块重命名
# import time as t     # 将time模块名字重命名为t   这样time这个名字就无法用了,只能用t
# print(t.time())

# from time import sleep    # 从一个模块中单独导入一个方法或对象
# sleep(1)

# from demo import *    # 从demo模块中导入所有东西,如果demo模块中有__all__定义的内容,则导入__all__列表中定义的内容,如果没有则导入所有东西

# 当再一个A模块开始的位置定义了 __all__ = ['xxx', 'xxx1']时,此时在另一个B文件中使用
# from demp import * 则导入的是A模块文件中__all__定义的xxx和xxx1


# __name__ 在一个A文件运行A文件,A文件中的__name__就是__main__。如果不在A文件中运行A文件,而是将A文件导入到了B文件中,则运行B文件时,A文件中的__name__为文件名A


#
    # 一大堆模块的集合为包

 

posted @ 2018-09-24 12:02  _小溢  阅读(120)  评论(0)    收藏  举报