Skip to main content
 首页 » 编程设计

python之处理参数时如何跳过 sys.argv[0]

2025年05月04日11telwanggs

我编写了一个小的 Python 脚本,用于检查参数并在参数足够时打印它们,或者在参数不足或没有参数时打印警告。但默认情况下,脚本本身是参数之一,我不想将它包含在我的代码操作中。

import sys 
 
# print warning if no arguments. 
if len(sys.argv) < 2:  
  print("\nYou didn't give arguments!") 
  sys.exit(0) 
 
# print warning if not enough arguments. 
if len(sys.argv) < 3:  
  print("\nNot enough arguments!") 
  sys.exit(0) 
 
print("\nYou gave arguments:", end=" ") 
# print arguments without script's name 
for i in range(0, len(sys.argv)): 
  if sys.argv[i] == sys.argv[0]: # skip sys.argv[0] 
    continue 
  print(sys.argv[i], end=" ") # print arguments next to each other. 
 
print("") 

我已经解决了这个问题:

if sys.argv[i] == sys.argv[0]: # skip sys.argv[0] 
    continue 

但是有没有更好/更合适的方法来忽略 argv[0]?

请您参考如下方法:

开始于:

args = sys.argv[1:]   # take everything from index 1 onwards 

然后忘记 sys.argv,只使用 args。