python知识详解

import 模块名表示将这个模块名中加载到当前文件中来,本质上就是将这个模块名中的所有代码加载到当前文件中,相当于C语言中的include,而模块名本质上就是一个.py文件,因此可以使用    from 模块名 import 方法,属性,类         这样的方式来加载模块中的方法属性和类。

在.py文件中,有时候出现 if __name__ == __main__,技巧如下:

首先定义了一个test.py的文件,然后再定义一个函数,并在函数定义后直接运行:

test.py

def HaveFun():
    if __name__ == '__main__':
        print('I am in my domain,my name is %s' % __name__)
    else:
        print('Someone else calls me!,my name is %s' % __name__)


HaveFun()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

运行test.py结果:

I am in my domain,my name is __main__
  • 1

然后继续创建一个main.py的文件,程序如下:

main.py

import test

   test.HaveFun()
  • 1
  • 2
  • 3
  • 4
  • 5

执行main.py文件,结果如下:

Someone else calls me!,my name is test
Someone else calls me!,my name is test
  • 1
  • 2

这里打印了两次,第一次实在main.py在进行import test的时候,进行的打印,第二次才是test.HaveFun()中执行的打印,可以发现,这里的 
__name__名称已经发成了变化,从之前的main变成了模块名称test。

总结:

1、__name__这个系统变量显示了当前模块执行过程中的名称,如果当前程序运行在这个模块中,__name__ 的名称就是__main__如果不是,则为这个模块的名称。 
2、__main__一般作为函数的入口,类似于C语言的main函数,尤其在大型工程中,常常有if __name__ == "__main__":来表明整个工程开始运行的入口。

https://blog.csdn.net/ppppfly/article/details/53415999//进一步解释!!!

你可能感兴趣的:(python)