我在Python sqlalchemy中有以下定义的表:
class entry(Base):
summary = Column(String(10000))
content = Column(String(10000))
description = Column(String(10000))
我基本上想要做以下事情:
a = entry()
for col in ['summary', 'content', 'description']:
a[col] = get_value(col)
但是我收到了以下错误:
TypeError: 'entry' object has no attribute '__getitem__'
所以我想我不能将a
视为dict
。通过sqlalchemy文档查看,在使用变量识别Column
时,我没有找到设置Column
值的方法。有人能指出我正确的方向吗?谢谢你的帮助!
答案 0 :(得分:5)
您可以使用内置的setattr()
:
a = entry()
for col in ['summary', 'content', 'description']:
setattr(a, col, get_value(col))