• 模块, __name__变量


    模块会先搜索当前路径,然后才会到系统路径下搜索

    sendmsg.py

    def test():
        print("----test--------")
    
    def test1():
        print("----test1-------")

    第一种导入方式,

    import sendmsg
    sendmsg.test()

    第二种导入方式

    from sendmsg import test,test1
    test()
    test1()

    第三种导入方式,建议少使用

    from sendmsg import *
    test()
    test1()
    import time as tt #起别名
    tt.sleep(3)

    __name__ 变量

    sendmsg.py

    def test():
        print("----test--------")
    
    def test1():
        print("----test1-------")
    
    # print(__name__) #自己调用打印__main__,别的模块调用打印模块名
    if __name__ == "__main__": #只有在自己调用时才运行,别的模块调用不执行
        test()
        test1()

    main.py

    import sendmsg #打印的结果为sendmsg模块名

    正常的代码样式

    import xxx
    class xxx(object):
        def __init__(self):
            pass
    
    def xxx():
        pass
    
    def main(): #一般程序的入口为main,习惯用法
        pass
    
    if __name__=="__main__":
        main()

    模块查找顺序 

    import sys
    print(sys.path) #sys.path显示环境变量,导入一个模块时先会在当当路径下查找,如果没有,在path中查询,查询到后返回,查不到报错
    sys.path.append("/home") #sys.path.append,sys.path返回一个list,使用append方法添加变量
    print(sys.path)

    重新导入模块

    模块在导入后,如果同时源模块被修改,只能重新再导入一次,或者使用reload(模块名)重新加载模块

    import hello
    from importlib import * #使用importlib中reload方法重新加载模块
    hello.print_hello()
    reload(hello)
  • 相关阅读:
    python+webdriver(二)
    python+webdriver(一)
    重逢
    在C,C++,java和python运行时解释器和编译器的区别
    hive调优
    github 操作指南
    jupyter 启动时的问题
    海量数据模型实施方法论
    python之Tkinker学习
    使用cmd命令行进行本地证书读取
  • 原文地址:https://www.cnblogs.com/rongpeng/p/12589987.html
Copyright © 2020-2023  润新知