python - 在 Python 中循环运行命令行参数
问题描述
我有一个从模块调用函数并使用命令行参数(sys.argv)的程序。我想用这些参数的不同值集多次调用这个函数。我基本上是在尝试使用循环来运行它,但它不起作用:
test_args = [[1,2,3],[4,5,6],[7,8,9]]
i = 0
while i < len(test)args)+1:
sys.argv = test_args[i]
module.function()
i=i+1
我尝试了 for 循环甚至 while 循环,但迭代在第一次迭代后停止。第一次迭代虽然成功运行,但没有进行下一次迭代,即 i = i+1
有没有办法循环运行它?
解决方案
我希望这是你想要达到的目标。
因为你没有function
在模块中提到现在。我创建了 sum 函数作为示例。
这是代码
import sys #if you directly take input from system arguments
def addall(a):
return sum(a)
test_args = [[1,2,3],[4,5,6],[7,8,9]]
for i in test_args:
print (i, addall(i))
输出:
[1, 2, 3] 6
[4, 5, 6] 15
[7, 8, 9] 24
推荐阅读
- javascript - React 中的 MS 身份验证
- javascript - d3 从时间戳中不正确地解析时间
- reactjs - 如何在选项卡导航器的屏幕之间传递数据,当按下第一个屏幕中的按钮并且没有被路由到第二个屏幕时?
- azure - 如何使用 Terraform 批准 Blob 存储 ADLS Gen2 上的托管专用终结点?
- javascript - P5.JS 3D点图渲染极慢
- matlab - 这个 Matlab 代码的 Maple 翻译是什么?
- c# - Moq EFCoreSecondLevelCacheInterceptor NotCacheable()
- tensorflow - Tensorflow '2.5.0' 可以与 tensorflow-data-validation 和大查询一起使用吗?这是验证模式和数据进入云的最佳方法吗
- c++ - “给定对齐方式和大小,对齐指针”是什么意思
- facebook-android-sdk - Facebook 范围无效