作为一个Python初学者,看到sys.argv和命令行联系起来的时候有点懵。
看的廖雪峰老师的网站上的例子,下面把代码贴上来
#!/usr/bin/env python
# -*- coding: utf-8 -*-
' a test module '
__author__ = 'Michael Liao'
import sys
def test():
args = sys.argv
if len(args)==1:
print 'Hello, world!'
elif len(args)==2:
print 'Hello, %s!' % args[1]
else:
print 'Too many arguments!'
if __name__=='__main__':
test()
上面的注释不解释。函数的第一行args=sys.argv,刚开始看的时候一点不理解,老师讲解的是sys
模块有一个argv
变量,用list存储了命令行的所有参数。后来搜了下多看了几个例子才知道原来就是用bash等terminal运行的时候Python name.py ’args‘,这个args就是argv读取的对象,这个函数的意思是把命令行中文件后面的参数赋值给args。有点raw_input的感觉呢。不过也不太一样。