Как задать имя файла вводимого пользователем на Python?

import sys
users = {}


def createNewTable():
    id = 0
    while True:
        choise = int(
            input("What would you do with table?\n 1. Add new user\n 2. Read the table\n 3. Close the table\n"))
        match choise:
            case 1:
                name = str(input("Enter name of new user: "))
                users[id] = name
                id += 1
            case 2:
                print(users)
            case 3:
                nameOfFile = input(str("Enter name of file \n"))
                with ("{nameOfFile}.txt" , "w") as f:
                    f.write(str(users))
                print("File saving...")
                sys.exit()

На третьем кейсе после ввода переменной nameOfFile, компилятор выдает ошибку Вызвано исключение enter


Ответы (1 шт):

Автор решения: Dr Proger

Кажется проблема лишь в том, что ты забыл указать после width слово open:

import sys
users = {}


def createNewTable():
    id = 0
    while True:
        choise = int(
            input("What would you do with table?\n 1. Add new user\n 2. Read the table\n 3. Close the table\n"))
        match choise:
            case 1:
                name = str(input("Enter name of new user: "))
                users[id] = name
                id += 1
            case 2:
                print(users)
            case 3:
                nameOfFile = input(str("Enter name of file \n"))
                with open("{nameOfFile}.txt" , "w") as f:
                    f.write(str(users))
                print("File saving...")
                sys.exit()
→ Ссылка