Telegram-bot на Python не записывает в файл

Всем привет! начинаю свой путь в мир программирования на Python пишу простого бота? который принимает значения от пользователя и должен их записывать в файл, но на def file_add(): users_data будто бы пустая в чем проблема? что делаю не так?

import datetime

bot = telebot.TeleBot('')
user_list_aut = []  #

@bot.message_handler(func=lambda message: message.chat.id not in user_list_aut)
def not_list_answer(message):
    bot.send_message(message.chat.id, 'Доступ запрещен! Для предоставления доступа напишите @')

@bot.message_handler(func=lambda message: True, content_types=['text'], commands=['start'])
def q_fn(message):
    msg = bot.send_message(message.chat.id, 'Введите своё ФИО:')
    bot.register_next_step_handler(msg, auto_check)


def auto_check(message):
    global users_data

    first_step = message.text
    users_data.append(first_step)
    msg = bot.send_message(message.chat.id, 'Введите номер машины')
    bot.register_next_step_handler(msg, car_number)

def car_number(message):
    second_step = message.text
    users_data.append(second_step)
    msg = bot.send_message(message.chat.id, 'Вы успешно зарегистрировались')
    # print(users_data)
    bot.register_next_step_handler(msg, file_add)


def file_add():
    f.open('file1.txt', 'w+')
    f.write(users_data)
    f.close()

    print(users_data)

bot.polling(none_stop=True)```

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

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

попробуйте создать переменную вне всех функций - users_data = [].

→ Ссылка