ifullut
@ifullut
Учу программирование понарошку...

Как сделать чтоб программа автоматически создавала переменные в Python?

И так. Всем привет. Сразу к вопросу.
И так есть функция create_input(name, input). Name это имя переменной, а input это фраза (типо myvar = input("You are a boy? <- это сам аргумент input")). Программа должна создать такой input, но с данными, которые введёт пользователь.
Был такой код:
def create_input(name, input):
    exec(f"{name} = input('{input}')")
    print(name, input)

create_input("myvar", "You are a boy?")


Я пробовал, вроде работает, но он вместо You are a boy пишет: built-in function input и просит ввести что-то, и пишет в консоли myvar и built-in function input вместо You are a boy? Как это исправить? И сделать чтобы выводит не You are a boy? А сам ответ к примеру Yes, как то так, спасибо заранее)

Спасибо заранее)
  • Вопрос задан
  • 1867 просмотров
Решения вопроса 1
@o5a
Вам нужен словарь. Ключом будет название вопроса, значением - ответ. Пример:
answers = {}
def create_input(question):
    answers[question] = input(question)
    print(question, answers[question])


Конкретная реализация уже от самой задачи.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Для начала неплохо бы в коде 3 из 4-х слов input заменить на что-то другое, так как input - это функция.
Ответ написан
Комментировать
HemulGM
@HemulGM Куратор тега Python
Delphi Developer, сис. админ
Много переменных - это массив (словарь), братан
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы