如何在Python中读取整数命令行参数?

2024-04-25 16:56:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试下面的内容,正如许多帖子所建议的,但是我仍然得到了

ValueError: invalid literal for int() with base 10: 'gap_interval.py'. What am I missing?

import sys 

if __name__ == '__main__':
    n = 4
    a = []
    for i in sys.argv:
        print int(i.strip())

Tags: py内容forbasewithsyswhat建议
2条回答

Pythonsys.argv始终将文件名作为第一个参数:

>>> python test.py 1 2 3
>>> sys.argv
['test.py', '1', '2', '3']

如果要将其转换为int,可以执行以下操作:

nums = map(int, sys.argv[1:])

>>> nums
[1,2,3]

您需要跳过sys.argv[0],这是脚本的名称:

for i in sys.argv[1:]:
    # ...

相关问题 更多 >