通过 Python 在 SQLite 中创建具有许多属性的表 - 最好的方法?
Create tables with many attributes in SQLite via Python - best way?
对于一个项目,我必须使用 ORM 通过 Python 在 SQLite 中创建一个具有 51 个属性的 table,因此将 table 定义为 类。结构是这样的table,但是有y1-y50,它们是相似的。
class Train(Base):
__tablename__ = 'train'
#Name columns and attributes
x = db.Column(db.Float, primary_key = True, nullable = False)
y1 = db.Column(db.Float)
y2 = db.Column(db.Float)
y3 = db.Column(db.Float)
y4 = db.Column(db.Float)
我现在可以只复制那些 yi 变量,粘贴并调整它们。但是有更好的方法吗?我应该借助 for i in range() 循环来定义变量吗?解决这个问题的最佳方法是什么?
已经谢谢你了!
保罗
试试这个:
for i in range(50):
setattr(Train, f"y{i+1}", db.Column(db.Float))
对于一个项目,我必须使用 ORM 通过 Python 在 SQLite 中创建一个具有 51 个属性的 table,因此将 table 定义为 类。结构是这样的table,但是有y1-y50,它们是相似的。
class Train(Base):
__tablename__ = 'train'
#Name columns and attributes
x = db.Column(db.Float, primary_key = True, nullable = False)
y1 = db.Column(db.Float)
y2 = db.Column(db.Float)
y3 = db.Column(db.Float)
y4 = db.Column(db.Float)
我现在可以只复制那些 yi 变量,粘贴并调整它们。但是有更好的方法吗?我应该借助 for i in range() 循环来定义变量吗?解决这个问题的最佳方法是什么?
已经谢谢你了! 保罗
试试这个:
for i in range(50):
setattr(Train, f"y{i+1}", db.Column(db.Float))