2012-11-05 45 views
0

所以,我想要做的是LS Mimic在Python代码中。没有命令的Python Argparse关键字

我已经完成了大部分的命令,但我有一两件事,我不能找到解决

所以,如果ls命令得到这个命令行,

ls test1

应该找到test1目录,然后在该目录中执行ls

然而,因为我只能找到创建的 实际使用之前需要一个关键字参数的方式,我不能找到这样的方式..

它不能是这样的

ls -move_dir test1

如果程序认为如果没有命令就可以了,它会按照上面的方式处理。 (它会发现该目录并运行ls

请帮助我!

+4

'argparse'支持[位置参数](http://docs.python.org/3/library/argparse.html#name-or-flags)。 –

+0

噢,但我忘了提及,当你必须有这个论点时,这种立场性的争论是。但在上述情况下,这是不正确的。反正谢谢! – JaemyeongEo

+0

您接受的答案是使用_positional argument_。我想我可能已经提到你需要考虑使用'nargs'参数_in addition_使用_positional参数_... :) –

回答

2

这是否帮助?

import argparse 
p = argparse.ArgumentParser() 
p.add_argument('a', nargs='*') 
res = p.parse_args() 
print res.a 

结果:

% python test.py 1 2 3 
['1', '2', '3'] 
+0

救生员!非常感谢! – JaemyeongEo

-1

尝试寻找到使用sys.argv[]

+0

呃..它可以工作,但我已经在argparse中实现了一切,我喜欢这种方式argparse的作品..但感谢回复 – JaemyeongEo