如何将 powershell 数组传递给 python 脚本
How to pass an array of powershell to a python script
我实际上是在尝试将 powershell 脚本中的 arrayList (System.Collections.ArrayList) 提供给 python 脚本,如下所示:
Powershell 脚本
$exampleArray= New-Object System.Collections.ArrayList
$tabChemins.Add("test1") | Out-Null
$tabChemins.Add("test2") | Out-Null
$tabChemins.Add("test3") | Out-Null
python.exe .\exampleScriptPython.py $exampleArray
Python 脚本:(我不想使用循环遍历所有元素来创建我的列表。)
import sys
print(sys.argv[1])
print(sys.argv[2])
print(sys.argv[3])
它逐个元素地给我,但我只希望它们在一个元素中,输出:
test1
test2
test3
理想输出:
['test1','test2','test3']
似乎你可以简单地使用数组 sys.argv[1:]
来做任何你想做的事情。
如果您想将它作为单独的参数传递给函数,那么我相信 *sys.argv[1:]
可以完成这项工作。
我实际上是在尝试将 powershell 脚本中的 arrayList (System.Collections.ArrayList) 提供给 python 脚本,如下所示:
Powershell 脚本
$exampleArray= New-Object System.Collections.ArrayList
$tabChemins.Add("test1") | Out-Null
$tabChemins.Add("test2") | Out-Null
$tabChemins.Add("test3") | Out-Null
python.exe .\exampleScriptPython.py $exampleArray
Python 脚本:(我不想使用循环遍历所有元素来创建我的列表。)
import sys
print(sys.argv[1])
print(sys.argv[2])
print(sys.argv[3])
它逐个元素地给我,但我只希望它们在一个元素中,输出:
test1 test2 test3
理想输出:
['test1','test2','test3']
似乎你可以简单地使用数组 sys.argv[1:]
来做任何你想做的事情。
如果您想将它作为单独的参数传递给函数,那么我相信 *sys.argv[1:]
可以完成这项工作。