繁体   English   中英

命令行 arguments python 更改

[英]command line arguments python changes

有没有办法在 Python 中定义命令行 arguments,但是这些参数的数量会发生变化?

例如我有这个列表:

arguments = [arg1,arg2,arg3]

我的脚本将从这样的另一个地方调用:

python3 python_script.py arg1 arg2 arg3

但是,arguments 的数量可能会改变:

python3 python_script.py arg1 arg2 arg3 arg4 arg5

那么,有没有办法确保数组是可扩展的?

先感谢您!

args 的数量已经是可变的。 这是您的 shell 的属性,而不是 python 的属性。 您可以使用 sys.argv 获取列表。

# run.py
import sys
print(sys.argv)
python3 run.py a b c d
>>> ['run.py', 'a', 'b', 'c', 'd']

在 python 脚本中,使用变量len(sys.argv)来计算有多少 arguments 被传递给 python 脚本。

根据来自len(sys.argv)的值创建arguments数组,然后对数组arguments执行所需的操作

import sys
n = len(sys.argv)
arguments = []
for i in range(1,n):
    arguments.append(sys.argv[i])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM