Я работаю над созданием эмулятора SQL в Python и для хранения строк, я хотел бы использовать именованные кортежи, так как я могу легко обрабатывать сложные запросы с помощью выбора, упорядочения по и где.Я начал с обычных кортежей, но мне часто приходилось искать атрибут строки и мне нужно было поддерживать порядок столбцов, поэтому я пришел к namedtuples.
Проблема в том, что некоторые имена моих столбцов имеют ведущиеподчеркивания, которые приводят к тому, что я получаю ValueError: Field names cannot start with an underscore: '_col2'
Я ищу способ использовать именованные кортежи с подчеркиваниями (возможно, какой-то тип переопределения) или подходящий альтернативный контейнер, который позволяет мне легко преобразовать вкортеж значений в исходном порядке столбцов или для доступа к отдельным значениям по именам их полей.
Я думал о добавлении строки начальных символов к каждому кортежу, а затем о написании функции промежуточного программного обеспечения, выполняющей функцию getattr, но сначала удаливведущая строка символов - но это кажется невероятно хакерским.