python中import理解

来源:互联网 发布:知乎 国际政治 编辑:程序博客网 时间:2024/06/17 06:26

模块是一个可以交互使用,或者从python程序访问的代码段,只要导入一个模块就可以使用这个模块的任何公共函数、类或者属性。


python有三种导入模块的方法:


1)import modename

使用这种方式相当于在当前导入的命名空间(namespace)里新建了一个modename,所以使用该模块的方法或者属性时,

必须加上模块名称,例如:modname.func()

当方法存在重名函数时,必须使用import modename的导入方式。便于区分是哪个模块的函数。


2)from modename import func/classname      from modename import a,b,c

func/classname 被直接导入到了本地命名空间中,所以可以直接使用,不需要添加模块名称。


3)【mod=__import__("modname",global(),local(),"funcname/classname")】

这个函数相当于from modename import func/classname


python将代码拆分为模块最初的目的是功能的独立,所以所模块提供的是某个独立的功能。

作为函数式编程语言,python模块的内容一般是函数的形式 。


if __name__ == '__main__'

当模块被直接运行时,模块的_name_属性值为_main_,所以可以在直接运行时写入一些调试语句;

当模块被import载入使用时,_name_属性为模块的名称,所以就会自动忽略调试语句。


if __name__ == "__main__":      tf.app.run()   

from __future__ import absolute_import  from __future__ import division  from __future__ import print_function    import sys    from tensorflow.python.platform import flags      def run(main=None):    f = flags.FLAGS    f._parse_flags()    main = main or sys.modules['__main__'].main    sys.exit(main(sys.argv)) 



原创粉丝点击