Я застрял на, казалось бы, простой задаче с IRC-ботом Python Twitch, который я разрабатываю для своего канала. У меня с системой баллов все разобрался, и я думал, что она работает, но обнаружил, что каждый раз, когда я перезапускаю программу, список, который содержит балансы пользователей, сбрасывается.
Это потому, что я объявляю пустой список в начале скрипта каждый раз, когда программа запускается. Если пользователь общается и его нет в списке приветствуемых пользователей, то бот будет приветствовать их и добавит их имя в список, а их баланс в соответствующий список.
Можно ли как-то обойти эту проблему сброса и сделать так, чтобы список не сбрасывался каждый раз при перезапуске программы? Заранее спасибо, и вот мой код:
welcomed = []
balances = []
def givePoints():
global balances
threading.Timer(60.0, givePoints).start()
i = 0
for users in balances:
balances[i] += 1
i += 1
def welcomeUser(user):
global welcomed
global balances
sendMessage(s, "Welcome, " + user + "!")
welcomed.extend([user])
balances.extend([0])
givePoints()
#other code here...
if '' in message:
if user not in welcomed:
welcomeUser(user)
break
(Я пытался использовать глобальные переменные для решения этой проблемы, однако они не сработали, хотя я предполагаю, что использовал их неправильно: P)
json
иpickle
. Вы бы прочитали этот список при перезапуске и получили бы текущие значения. - person tdelaney   schedule 26.02.2016