Как простым способом извлечь данные по одному из массива и передать их в конструктор

Я новичок в python, вот первая часть моего дипломного проекта. Я хочу извлечь данные из операторов вставки MySql

                    if tableName == 'accounts':
                    a = Account(rm_apostrophe(slippedMsgs[0]), rm_apostrophe(slippedMsgs[1]),
                                rm_apostrophe(slippedMsgs[2]))
                        print(a.account_id, a.account_name, a.customer_code)
                    Accounts.append(a)

В приведенном выше коде Account — это класс, используемый для сохранения данных, а rm_apostrophe — метод для обработки строк.

class Account:
    def __init__(self, account_id, account_name, customer_code):
        self.account_id = account_id
        self.account_name = account_name
        self.customer_code = customer_code

    def rm_apostrophe(raw_data):
        if raw_data is None or raw_data == "Null":
            return None
        elif raw_data.startswith("'"):
            return raw_data[1:-1]
        else:
            return raw_data

Account — это простой метод всего с тремя атрибутами, так что проблем с его записью нет. Но у меня есть еще один класс с именем Ticket с 73 атрибутами, что означает, что я должен сделать rm_apostrophe(slippedMsgs[x]) 73 раза в

t = Ticket(rm_apostrophe(slippedMsgs[0]), rm_apostrophe(slippedMsgs[1]),
                                rm_apostrophe(slippedMsgs[2])...etc)

Я предполагаю, что должен быть более простой способ помочь мне передать эти параметры, возможно, мне нужно изменить конструктор. Надеюсь, кто-то может мне помочь, большое спасибо

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать понимание списка для создания списка аргументов:
args = [rm_apostrophe(x) for x in slippedMsgs]
Затем вы можете передать эти аргументы, используя
t = Ticket(*args)
* перед args передает каждый элемент в списке в качестве аргумента Ticket

Если вам помог этот ответ, отметьте его как принятый.

Henry 21.12.2020 11:42

Другие вопросы по теме