zoukankan      html  css  js  c++  java
  • Pyhon文件的用途


    Python1个文件2种用途:


    当文件被当做脚本运行时 __name__='__main__'
    当模块被导入使用 __name__='spam' ==>等于模块名

    假定spam代码如下

    money=1000
    
    
    def index():
        print('in the index')
    
    
    def bbs():
        print('in the bbs')
    
    def delphi():
        print('in the delphi')
    
    if __name__=='__main__':
        bbs()
        delphi()
        index()
    View Code
    if __name__=='__main__':
    bbs()
    delphi()
    index()


    这段代码的作用是,如果该代码被当做模块导入,不执行函数的调用方式,如果被当做脚本,则运行之前的代码


    modelTest.py代码如下:
    import spam
    print(spam)
    # print(spam.money)
    # print(spam.index)
    # print(spam.bbs)
    # print(spam.delphi)

     ######################################################################3

    模块的搜索路径

    模块的搜索路径:内存-->内置模块-->sys.path

    import sys
    print(sys.path)
    sys.path.append(r'D:DocumentPython0404day5模块和包spam.py')
    print(sys.path)

    包就是包含了__init__.py文件的文件夹,可以往该文件夹下放一堆子模块

    架构如图:

     当在包的使用当中import package1 实际上就是引入了package1里的__init__.py文件

    示例2

    架构如图所示:

     

     

     

    注意目录的规范

     这句话很重要:

    if __name__=='__main__':
    src.run()

     start源代码

    BaseDir=os.path.dirname(os.path.abspath(__file__))#取到star的目录bin
    #print(BaseDir)
    BaseDir2=os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #取到bin的目录ATM
    #print(BaseDir2)  #取到了ATM
    
    sys.path.append(BaseDir2)
    from core import src
    if __name__=='__main__':
        src.run()
  • 相关阅读:
    hadoop 2.7 添加或删除datanode节点
    hadoop HA集群的安装
    Linux-PAM认证
    [Notice]博客地址转移 vitostack.com
    WPF 自定义 MessageBox (相对完善版 v1.0.0.6)
    python2.7 倒计时
    Hadoop Streaming框架使用(二)
    Hadoop错误码速查
    Hadoop Streaming框架使用(一)
    python清空列表的方法
  • 原文地址:https://www.cnblogs.com/nodchen/p/8797632.html
Copyright © 2011-2022 走看看