У меня есть Python класс:
class Database:
conn = sqlite3.connect(‘database.db’)
c = conn.cursor()
def __init__(self):
pass
Внутри этого класса у меня есть несколько методов, которые я буду использовать с моим классом базы данных, таких как:
def create_table(self, table_name, *args):
pass
def add_user(self):
pass
def remove_user(self):
pass
И так на. Мой вопрос: как мне использовать * args с моей функцией create_table, если я не уверен, сколько у меня будет столбцов. Например, я знаю, что у меня будут столбцы first, last и pay, а моя функция будет выглядеть так:
def create_table(self, table_name, *args):
c.execute("""CREATE TABLE ‘{}’ (‘{}’ text, ‘{}’ text, ‘{}’
integer).format(self.table_name, self.first, self.last, self.pay)”””)
c.commit()
Так что, если я хочу создать таблицу, я могу сделать это:
Item = Database()
Item.create_table('employees', ‘First_name’, ’Last_name’, 100000)
Но что, если я не знаю, сколько у меня будет столбцов? Спасибо