Как сохранить программу на рабочий стол через json.dump()?
Я полнейший новичок в программировании, поэтому пока что туплю. Хочу сделать так, чтобы эта программа сохранялась на рабочем столе, как это сделать? Вот код:
import json
dictionary ={}; x = True
while x == True:
motion = input("Какое действие желаете сделать - Добавить в словарь(1)/ Удалить из словаря (2)/"
" Просмотреть словарь (3)/ Найти в словаре (4)/ Сохранить словарь в текстовом редакторе (5)\n")
if motion == "1":
new_key = input("Введите ключ\n") ; new_address = input("Введите значение\n")
dictionary[new_key] = new_address
print(dictionary)
elif motion == "2":
delete = input("Введите ключ, который нужно удалить\n")
if delete not in dictionary:
print("Неверно задан ключ\n")
else:
del dictionary[delete]
print(dictionary)
elif motion == "3":
print(dictionary)
elif motion == "4":
search = input("Введите ключ, который нужно найти\n")
if search not in dictionary:
print("Неверно задан ключ\n")
else:
print (dictionary[search])
elif motion == "5":
new_name = input("Введите имя создаваемого файла\n")
with open("%s.txt"%(new_name),"w") as f:
json.dump(dictionary,f,ensure_ascii=False)
else:
print("Неверно введено действие")
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Папка рабочего стола относится к профилю юзера. Чтобы ее получить используем функцию os.path.expanduser, а после добавим имя файла
Пример:
import os.path
new_name = '1'
file_name = os.path.expanduser("~/Desktop") + f'/{new_name}.json'
with open(file_name , "w") as f:
json.dump(dictionary, f, ensure_ascii=False)