Создание новой переменной путем передачи нескольких переменных (число и строка) - PullRequest
0 голосов
/ 30 апреля 2019

Я борюсь с моим первым домашним заданием, связанным с работой на языке Python 3.В настоящее время я должен создать переменную my_intro, передавая переменные my_name и my_age в функцию make_introduction ().Распечатайте переменную после ее создания.В настоящее время я получаю сообщение об ошибке: TypeError Traceback (последний вызов был последним) в ----> 1 my_intro = make_introduction (my_name, my_age) 2 print (my_intro)

TypeError: объект 'str' не являетсяcallable

Я делаю домашнюю работу на ноутбуке Jupyter и считаю, что моя возможная проблема может заключаться в предыдущей строке кода, которую я должен выполнить в задании.

Я пробовал несколько различных вариантов кодирования, включая использование аргумента str перед my_age

строкой, закодированной для моего возраста

# create a variable stating my age
my_age = 24
print(my_age)

Строка непосредственно перед моей проблемой

make_introduction = "Hello, my name is, " + my_name + " and I'm " + str(my_age) + " years old."
print(make_introduction)

Строка, которая показывает ошибку

my_intro = make_introduction(my_name, my_age)
print(my_intro)

Я ожидаю, что на выходе будет что-то вроде Привет, меня зовут Кейтлин Гриффит и мне 24 года.

однако то, что я вижу: объект str не вызывается

1 Ответ

1 голос
/ 30 апреля 2019

Следующая строка создает переменную:

make_introduction = "Hello, my name is, " + my_name + " and I'm " + str(my_age) + " years old."

Вам нужна функция.И это должно выглядеть так:

def make_introduction(my_name, my_age):
    return "Hello, my name is, " + my_name + " and I'm " + str(my_age) + " years old."

Функции могут быть вызваны (например, make_introduction('Diego', 32)).При вызове это означает, что вы можете добавить () после имени объекта.

Итак, ваш полный пример может выглядеть так:

my_age, my_name = 24, 'Mike'

# Function declaration begins in the following line
def make_introduction(my_name, my_age):
    return "Hello, my name is, " + my_name + " and I'm " + str(my_age) + " years old."
# Function declaration ended in previous line (Note: the `:` and indentation)

my_intro = make_introduction(my_name, my_age)  # This line captures the function output into my_intro
print(my_intro)
...