Загрузка...

Описать функцию

Фраза, которую функция хранит у себя, и слово, которое она возвращает, — разные вещи. Когда вы передаёте имя, возвращается одно, а хранится другое. Фраза пишется в тройных кавычках и обязана быть первой строкой с отступом прямо под def. Функция hello принимает одно имя. По фразе результат — hello плюс это имя, а строка с return склеивает слово hello, пробел и имя. Никакой пакет не ставится, никакая папка не создаётся. Первый print выводит эту фразу, второй — hello для lena. Программа не останавливается.

фраза, хранимая у hello

python
def hello(name):
    """Return hello plus the name."""
    return "hello " + name

print(hello.__doc__)
print(hello("lena"))

На экране две строки. Первая — ровно такая: Return hello plus the name. Точка в конце входит в саму фразу; кавычек вокруг нет, и это не десятичная точка. Вторая строка — hello lena, где lena — имя, которое вы передали в hello. Пробел между hello и lena уже лежит в строке с return, до того как имя присоединено. Две строки — это две разные записи: первая — фраза, хранимая у функции, вторая — то, что функция возвращает, когда вы передаёте имя. print пишет обе, после чего программа завершается. None не выводится. Этих двух строк достаточно, второй инструмент не нужен.

Строка, начинающаяся с #, — всего лишь заметка для человека, который читает файл; у hello она не хранится. Уберите строку с тройными кавычками — и фразы нет, а первый print выведет None. Передача имени по-прежнему даст hello lena, и программа по-прежнему завершится. Такой пропавшей строки в этой программе нет. Тройные кавычки должны стоять первой строкой с отступом под def: запись после другой строки фразой функции не станет. Эта страница не строит класс, не вкладывает один объект в другой и не гоняется за неверным подсчётом мест.

📊 две строки на экране

что вы печатаете что пишет эта строка
описание, хранимое у hello Return hello plus the name.
hello("lena") hello lena

Следующая страница называется Имена. Здесь вы лишь кладёте на hello однострочную фразу, затем печатаете её и то hello, которое функция отдаёт обратно.

Фраза — это не само hello

Первая строка на экране — Return hello plus the name. Вторая — hello lena. Заметка с # не хранится. Опустите тройные кавычки — и фраза превратится в None. Следующая страница — Имена.

🧠 Проверьте Свои Знания

Готов к Началу

Проверьте Свои Знания

Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему

❓
6
Вопросы
🎯
70%
Для Прохождения
♾️
∞
Время
🔄
∞
Попытки

📝 Инструкции

  • Внимательно прочитайте каждый вопрос
  • Выберите лучший ответ на каждый вопрос
  • Вы можете пересдавать тест столько раз, сколько захотите
  • Ваш прогресс будет показан вверху