python: бот ищет не тот message.text в telebot

Написал функцию "улучшение для авто", вот код:

        elif message.text == 'Установить диски' or message.text == 'установить диски':
            def start_2(message):
                file = open(f'c://tgplay/{message.chat.id}_money.py', 'r+')
                qw1 = int(file.read())
                nums = int(qw1)-int(300000)
                file.close
                bot.send_message(message.chat.id, 'Вы установили диски ' + '{}'.format(message.text) + ' на своё авто! Чтобы посмотреть введите "Машина".')

            file = open(f'c://tgplay/{message.chat.id}_money.py', 'r+')
            moneq = int(file.read())
            file.close
            if moneq >= int(300000):
                bot.send_message(message.chat.id, 'Внимание: после установки дисков на своё авто, вы больше не сможете его удалить!')
                if message.text == 'yokatta' or message.text == 'Yokatta':
                    file = open(f'c://tgplay/{message.chat.id}_avtoylych.py', 'x+', encoding="utf-8")
                    file.write(str('Yokatta'))
                    file.close
                elif message.text == 'racing superturismo' or message.text == 'Racing superturismo':
                    file = open(f'c://tgplay/{message.chat.id}_avtoylych.py', 'x+', encoding="utf-8")
                    file.write(str('Racing superturismo'))
                    file.close
                elif message.text == 'borbet' or message.text == 'Borbet':
                    file = open(f'c://tgplay/{message.chat.id}_avtoylych.py', 'x+', encoding="utf-8")
                    file.write(str('Borbet'))
                    file.close
                elif os.path.isfile(f'c://tgplay/{message.chat.id}_avtoylych.py'):
                    bot.send_message(message.chat.id, 'У вас уже есть диски на авто!')
                    return
                msg = bot.send_message(message.chat.id, 'Введите название дисков:')
                bot.register_next_step_handler(msg, start_2)
            else:
                bot.send_message(message.chat.id, 'Недостаточно средств!')

И когда я тестирую команду, бот визуально пишет что диск добавлен, но на background'e ничего не записывается, в чем ошибка? по моему написано всё правильно. Не судите строго, я новичок и прошу у вас помощи, заранее спасибо огромное!


Ответы (1 шт):

Автор решения: Komedik

Вы не закрываете файл, так как закрытие файла пишется со скобками:

file.close => file.close()

И ещё пару советов:

'Текст '+'{}'.format(переменная)+'текст' можно заменить на: f'Текст {переменная} текст'

А проверку, что написано в сообщении можно сделать с помощью нижнего регистра:

message.text = 'хОЧу пОМЕНять ДисКИ'
if message.text.lower() == 'хочу поменять диски':
    print(message.text)
Вывод: хОЧу пОМЕНять ДисКИ
→ Ссылка