Проблема здесь в том, что каждый раз, когда вы звоните add_score()
, вы создаете новый список с одной записью, а затем выбираете его.Таким образом, когда вы загружаете файл рассола, вы возвращаете последний список, который содержит только одну запись.
add_score()
должен сначала загрузить список рассола, затем добавить к нему счет, а затем засолить его.
def add_score(name,score):
"""
Dodaje wynik do osobnego pliku .
:param name:
:param score:
:return:
"""
try:
# Load the existing list of scores first, if it exists
with open("score_games.dat", "rb") as f:
my_list = pickle.load(f)
except FileNotFoundError:
my_list = []
scores = (name,score)
my_list.append(scores)
with open("score_games.dat", "ab") as f:
pickle.dump(my_list, f)
f.close()