Python 中的 if __name__ == '__main__' 该如何理解

http://blog.konghy.cn/2017/04/24/python-entry-program/

__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ 。这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。

 

 1 import sys
 2 
 3 def test():
 4     args = sys.argv
 5     if len(args)==1:
 6         print 'Hello, world!'
 7     elif len(args)==2:
 8         print 'Hello, %s!' % args[1]
 9     else:
10         print 'Too many arguments!'
11 
12 if __name__=='__main__':
13     test()

 

python hello.py Michael获得的sys.argv就是['hello.py', 'Michael]。

在解释器启动后, argv 列表包含了传递给脚本的所有参数, 列表的第一个元素为脚本自身的名称.

posted @ 2017-05-24 12:27  nice_day  阅读(291)  评论(0)    收藏  举报