обновление словаря Python, сохраненного в файле Python - PullRequest
0 голосов
/ 22 октября 2019

Добрый день,

У меня есть файл словаря Python, который я создал, используя следующий код:

playerdict = {('john','denver'):12345,('keneith','Noisewater'):23456}

Словарь очень длинный, поэтому я сохранил его в файл Python.

with open('playerdict.py','w') as file:
    file.write("playerdict = { \n")
    for k in sorted (playerdict.keys()):
        file.write("%s:%s, \n" % (k, playerdict[k]))
    file.write("}")

Теперь я могу импортировать словарь, используя:

from playerdict import playerdict

Какой самый питонный способ обновить словарь новым игроком? Например, я хочу добавить k, v ('johhny B', хорошо), 34567. Это единственный способ обновить playerdict, а затем переписать весь файл, или есть ли питонский способ записать имя в файл без перезаписи всего словаря в файл при каждом добавлении имени.

Спасиботак много заранее.

1 Ответ

0 голосов
/ 22 октября 2019

Изменить

with open('playerdict.py','w') as file:

на

with open('playerdict.py','a') as file:


Python File Modes
Mode    Description
'r'     Open a file for reading. (default)
'w'     Open a file for writing. Creates a new file if it does not exist or truncates the file if it exists.
'x'     Open a file for exclusive creation. If the file already exists, the operation fails.
'a'     Open for appending at the end of the file without truncating it. Creates a new file if it does not exist.
't'     Open in text mode. (default)
'b'     Open in binary mode.
'+'     Open a file for updating (reading and writing)
...