作为一个Python初学者,看到sys.argv和命令行联系起来的时候有点懵。
看的廖雪峰老师的网站上的例子,下面把代码贴上来
#!/usr/bin/env python# -*- coding: utf-8 -*-' a test module '__author__ = 'Michael Liao'import sysdef 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的感觉呢。不过也不太一样。