Python SQLite Regex ExecuteMany - PullRequest
       28

Python SQLite Regex ExecuteMany

0 голосов
/ 10 октября 2018

Заранее спасибо за вашу помощь.

Я в Python, использую регулярное выражение и собираю шаблоны в тексте.Затем я сохранил его в списке и вызвал этот список при вставке значений в таблицу с использованием SQLite.Тем не менее, я получаю объект 'str' не имеет атрибута executemany.Следующий код должен работать (как и для кортежа 2) и вставлять мои данные, но он выдает мне ошибку.

searc_h = re.compile(r'([A-Z]{4}|[A-Z]{3})\s([\d]{4})\s-\s[A-Z]{1}\s\((\d\.\d)')
find_all = list(re.findall(searc_h, texter))

find_all_fin = []
for (a,b,c) in find_all:
    ap = (int(b), str(a), float(c))
    find_all_fin.append(ap)


c.executemany('INSERT INTO Takes VALUES (?, ?, ?)', find_all_fin)
conn.commit()

Вот ошибка введите описание изображения здесь

Любая помощь или совет будут очень оценены.

1 Ответ

0 голосов
/ 10 октября 2018

Вы повторно используете переменную c в двух разных местах: одно для хранения соединения с базой данных, а другое для сохранения результата Regex в блоке цикла for.Устраните их неоднозначность, и ваш код подойдет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...