【发布时间】:2018-06-30 04:47:16
【问题描述】:
假设我有这些代码行:
if __name__ == '__main__':
if '-h' in sys.argv:
show_help()
elif '-f' or 'function'in sys.argv:
print(function1)
elif '-n'or '-name' in sys.argv:
print(function2)
elif '-e' or '-extension'in sys.argv:
print(function3])
elif '-m' or '-missing'in sys.argv:
print(function4)
elif 'r' or '-range' in sys.argv:
print(function5)
else:
exit
这些字母应该是用户在 bash 终端中输入的。 显示帮助方法有效,它能够显示所有字符串。 -f 输入有效并显示了我在该函数中需要的内容,但是代码只是从函数 1 中吐出内容,而不是从函数 2 等等。
我如何获得这些不同的字母,-f、-n、-e、-m(如果输入)来执行该功能并吐出该信息? 还有一种更有效的方法可以在不使用 argparse 的情况下为初学者 Python 脚本编写者执行此操作吗?
【问题讨论】:
-
你检查它是否在 sys.argv 中......当你通过 -n 时也是如此。使用 click ,与 argparse 相比相对简单
-
我推荐 argparse 模块。 docs.python.org/2.7/library/argparse.html
-
作为python中的菜鸟,我想尝试一些更简单的东西。但会看看!
标签: python python-3.x argv sys