命令行数组参数到python脚本



我想创建一个python脚本并解析命令行参数列表。

具体来说,我想给它提供以下参数,并让它作为数组读取它们。像这样:

run script.py (['file1.ascii', float_12, float_13, float_14, float_15, float_16], 
['file2.ascii', float_22, float_23, float_24, float_25, float_26] )

其中输入数组为:

input_array = (['file1.ascii', float_12, float_13, float_14, float_15, float_16], 
['file2.ascii', float_22, float_23, float_24, float_25, float_26] )

,在脚本中,我想使用"for循环">

for i in range(0, len(input_array) ): 
variable_1 = 'filei.ascii'
variable_2 = float_i2
variable_3 = float_i3
variable_4 = float_i4
variable_5 = float_i5
variable_6 = float_i6
#do my calculations

可以将数组转换为JSON。

在调用脚本中,执行:

import json, subprocess
args = json.dumps(
['file1.ascii', float_12, float_13, float_14, float_15, float_16],
['file2.ascii', float_22, float_23, float_24, float_25, float_26] 
)
subprocess.run(['python', 'script.py', args])

script.py中你解析JSON

import json, sys
input_array = json.loads(sys.argv[1])
for filename, var1, var2, var3, var4, var5 in input_array:
# do stuff