Python:从命令行输入创建元组

2 投票
8 回答
5824 浏览
提问于 2025-04-16 07:09

我有一个程序,它可以接受这样的命令行输入:

python2.6 prog.py -p a1 b1 c1

在这个输入中,我们可以有任意数量的参数,比如 -p a1 和 -p a1 c1 b1 e2 都是可以的。

我想根据这些可变的输入参数来创建一个元组。关于怎么做这件事,如果有建议的话会非常有帮助!如果元组的长度是固定的那就简单了,但我不太确定怎么实现一个长度可变的元组。

谢谢。

8 个回答

1

sys.argv 中循环,直到遇到另一个标志。

1

这样做应该可以:

import sys
t = tuple(sys.argv)

如果你可能不想要脚本的名字,那你可以试试这样做:

if len(sys.argv) > 1:
    t = tuple(sys.argv[1:])
2

元组的长度是固定的。一旦你创建了一个元组,就不能再修改它了。

命令行参数会被存储在一个列表里。

import sys
t = tuple(sys.argv[1:]) # since sys.argv[0] is the name of the script

撰写回答