Как сохранить программу на рабочий стол через 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)
→ Ссылка