我想使用循环来制作公式。我将添加pandas列,但要添加的列数取决于循环中的条件。
例如
l=[1,2,3,4]
s='a='
out=''
for i in l:
out=out+'+'+str(i)
在此示例中,s + out应该等于10
而不是'a=+1+2+3+4'
答案 0 :(得分:1)
您会看到您在代码中添加了字符串,在带字符串的python中使用+
登录只会将字符串连接起来并创建一个更大的字符串
我认为您要搜索的是函数exec
l=[1,2,3,4]
s='a='
out = '+'.join(map(str, l)) # out = '1+2+3+4'
exec(s+out) # a=10
print (a) # 10
说明:
'+'.join
将列表中的所有数字以'+'分隔起来
map(str, l)
将所有数字转换为字符串
exec(out)
执行字符串