[英]I have two lists. I would like to make a third from the elements given in one of the lists
[英]I have two lists. One of variable names one of initial values. I need to combine them so they can be used in function evaluation
我有從a.csv文件變量名稱,初始值和約束導入的三個列表。
variables = [x1,x2,x3]
和初始值列表
intialvalues = [1,2,5]
第三個約束列表
constraints = ['x1+x2', 'x2-x3']
我正在尋找一種將列表分成變量的方法,以便可以使用eval()
來評估約束。
編輯:.csv文件示例
Varible Names,Initial Values,Constraints
x1,1,x1+x2
x2,2,x2-x1
x3,3,x3+x2
,,x1+x3
列名稱在讀取時顯然被丟棄。
好了,您可以在名稱空間中聲明變量,但是修改globals()
和使用eval()
確實是一件很糟糕的事情,因此僅以示例為例。
variables = ['x1','x2','x3']
intialvalues = [1,2,5]
for var, val in zip(variables, intialvalues):
globals()[var] = val
constraints = ['x1+x2', 'x2-x3']
for c in map(eval, constraints):
print(c)
# 3
# -3
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.