1 回答

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
如果只是確定表的第一個(gè)數(shù)字,則可以使用字典將數(shù)字映射到表名稱。
調(diào)用Load_XXXDb()方法時(shí),可以使用getattr()動(dòng)態(tài)獲取屬性。
def Add_New(self):
pref = self.adding.addcode_text.text()
grade = self.adding.addgrade_text.text()
desc = self.adding.adddesc_text.text()
supp = self.adding.addsupp_text.text()
tables = {"1": "Stainless", "2": "Steel", "3": "Aluminum", ...}
table = tables[pref[0]]
try:
c.execute('INSERT INTO ' + table + ' (prefix,grade,desc1,supplier)VALUES(?,?,?,?)',(pref,grade,desc,supp))
conn.commit()
print('DONE')
getattr(self, 'Load_' + table + 'Db')()
except Exception as error:
print(error)
添加回答
舉報(bào)