如何使用命令行标志执行python脚本

时间:2011-05-22 19:38:48

标签: python-2.6

我有这段代码:

of = open("oldfile")
nf = open("newfile",'w')
for line in of:
     if len(line) > 17:
             nf.write(line)

of.close()
nf.close()

而不是指定17,我希望能够使用一个变量将它放在我的脚本目录中并直接执行它。如果没有标志,它可以打印类似'scriptname'的内容。如果有一个标志,如下所示,它将执行代码。

  

$ myscriptname -l 17 oldfile newfile

2 个答案:

答案 0 :(得分:4)

如果您愿意使用2.7+,请参阅optparse模块以检查标记并设置值,或更新(和更好)argparse。至于将它放在我的脚本目录中,我不太明白你想要什么。

答案 1 :(得分:3)

如果您只想快速和脏访问命令行参数:

import sys
print sys.argv # <-- this is an array containing all the command line parameters

如果您想要更多控制权,可以使用optparse module