python - 将 sys.arvg 与列表进行比较

标签 python linux

所以我想做的是将终端参数与代码中的列表进行比较。

例如,我将输入一个命令,如“python ./mycode.py -name.

所以我想将参数 -name 与代码中的列表进行比较。

目前看起来像这样:

reqArgs = ["-name", "-age", "-date"]

for arg in sys.argv:
  for req in arg:
    if req in reqArgs:
      print "Sucess"
    else:
      print "not working"

我知道我离这个目标并不遥远。我在这里缺少什么?

最佳答案

您只需要一个循环,并且 reqArgs 应该是字符串

reqArgs = ['-name', '-age', '-date']

for arg in reqArgs:
    if arg in sys.argv:
      print "Success"
    else:
      print "not working"

更好的解决方案:

req_args = ['-name', '-age', '-date']
found_all_req_args = all(arg in sys.argv for arg in req_args)

更好:

https://docs.python.org/2/howto/argparse.html

关于python - 将 sys.arvg 与列表进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47819937/

相关文章:

python - 如何在 Beautifulsoup Python 中实现 xpath 替代方案的跟随兄弟轴

linux - Logcat 在 Eclipse Mars 中显示不可见的消息

android - 如何获取默认接口(interface)及其inet地址?

python - Xpath scrapy 结果不符合预期

python - 如何将 wsse :Security, UsernameToken header 添加到 ZSI、Python 中的 SOAP 请求?

python - 如何在 Python 中创建一个 csv 文件,并将其导出(放入)到某个本地目录

linux - v2.6.39.4 中的文件 entry.S 在哪里?

python - 适用于 Python 3 的 Jupyter Notebook 中出现 ModuleNotFoundError,但不适用于 Python 2 (Mac OSX)

c++ - 什么时候不使用开源代码?

c - 使用linux终端时gcc从哪里来?