2017-02-18 175 views
0

我想使用列表中的字符串作为我创建的sqllite数据库中的列名称。目前,我有下面的代码(使用SQLAlchemy的):从列表中创建sqlite表列Python

db = create_engine('sqlite:///strings.db') 
db.echo = False 
metadata = MetaData(db) 
lang_array = [] 
lang_array.append(Column("id", Integer, primary_key = True)) 
for lang in lang_keys: 
    lang_array.append(Column(lang, String)) 

strings = Table("strings", metadata, lang_array) 

哪里lang_keys是字符串列表。是否有可能在上面的Table方法中传递一个列表?我收到错误AttributeError: 'list' object has no attribute 'schema。我在这里做错了什么?

回答

1

您可以使用append_column()方法:

strings = Table("strings", metadata) 
for column in lang_array: 
    strings.append_column(column) 
+0

完美!谢谢! – KexAri

+0

很高兴听到这一点。干杯! – metmirr