我正在尝试将参数输入random.triangular()
,这将是(low,high,mode)
。
要获取我从Excel单元格中提取它们的参数。基本上我必须创建一个数组,例如parameters[0] = 1,3,2
,其中1,3,2
是我需要输入到三角函数中的。
我是Python / Excel集成以及random
函数的新手,所以我要问的是,我甚至可以从数组中获取这些参数并在函数中使用它们吗?
答案 0 :(得分:2)
这根本没问题(如果我理解正确的话)。
您只需致电
即可random.triangular(*parameters[0])
此场景中的星号称为“unpacking operator”,它将采用可迭代的方式解压缩其项目,以便将它们作为参数提供给函数。
>>> import random
>>> parameters = [[1,3,2], [4,5,6]]
>>> random.triangular(*parameters[0])
1.796949832039262
如果参数实际上存储为字符串,则应重新考虑数据模型。您可以使用ast.literal_eval
来解析文字字符串:
>>> import ast
>>> dumb_parameters = ["1,3,2", "4,5,6"]
>>> parameters = [ast.literal_eval(s) for s in dumb_parameters]
>>> parameters
[(1, 3, 2), (4, 5, 6)]
>>> random.triangular(*parameters[0])
2.2933615845752904