@NIKA_R

Почему возникает ошибка TypeError: function missing required argument 'vars_list' (pos 2)?

Не понимаю причину возникновения ошибки. Пытаюсь считать данные из текстового файла и залить их в таблицу в базе данных. Все элементарно .

with open('/playtime.txt') as f:
    for line in f:
        inner_list = [elt.strip() for elt in line.split(';')]
        list_of_lists.append(inner_list)
        print(inner_list)

['43853393830', '2021-23-01 23:59:56', '500,00', '5243 6088 4324 6675', 'START', 'FINAL', '7174UW']

Отлично, файл читаем построчно ...

cursor.executemany( "INSERT INTO stat (id, date, pay , num_shell,  type , result , maker )   VALUES( '43853393830', '2021-23-01 23:59:56', '500,00', '5243 6088 4324 6675', 'START', 'FINAL', '7174UW' ) 
TypeError: function missing required argument 'vars_list' (pos 2)

------------

cursor.executemany( "INSERT INTO stat (id, date, pay , num_shell,  type , result , maker )  VALUES( %s', '%s' ,'%s' ,'%s' ,'%s' ,'%s' ,'%s', '%s' )", inner_list)
TypeError: not all arguments converted during string formatting

--------
TypeError: function missing required argument 'vars_list' (pos 2)

Если задать последнее поле , а не оставить дефолтное значение

Как исправить?
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
trapwalker
@trapwalker Куратор тега Python
Программист, энтузиаст
У вас значений 7, а плейсхолдеров для подстановки 8. Не хватает одного параметра, о чем вам английским по терминалу по человечески пишется в сообщении об ошибке:
TypeError: not all arguments converted during string formatting

Что тут не понятно?
Если делаете executemany то вторым аргументом должен быть итерируемый объект с векторами аргументов.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы