2.1.1.2 Функция print()
1. Посмотрите на строку кода ниже:
print ("Hello, World!")
Слово print, которое вы видите здесь, является именем функции. Это не означает, что где бы ни появлялось слово, это всегда имя функции. Значение слова происходит из контекста, в котором оно было использовано.
Вы, наверное, уже много раз сталкивались с термином «функция» на уроках математики. Вы, вероятно, также можете перечислить несколько названий математических функций, таких как синус или логарифм.
Однако функции Python более гибкие и могут содержать больше содержимого, чем их математические братья и сестры.
Функция (в данном контексте) - это отдельная часть компьютерного кода, способная:
Откуда берутся функции?
Конечно, если вы собираетесь использовать какую-либо уже существующую функцию, вы не можете повлиять на ее имя, но когда вы начнете писать свои собственные функции, вам следует тщательно продумать свой выбор имен.
print ("Hello, World!")
Слово print, которое вы видите здесь, является именем функции. Это не означает, что где бы ни появлялось слово, это всегда имя функции. Значение слова происходит из контекста, в котором оно было использовано.
Вы, наверное, уже много раз сталкивались с термином «функция» на уроках математики. Вы, вероятно, также можете перечислить несколько названий математических функций, таких как синус или логарифм.
Однако функции Python более гибкие и могут содержать больше содержимого, чем их математические братья и сестры.
Функция (в данном контексте) - это отдельная часть компьютерного кода, способная:
- вызвать какой-либо эффект (например, отправить текст в терминал, создать файл, нарисовать изображение, воспроизвести звук и т. д.); это нечто совершенно неслыханное в мире математики;
- оценить значение (например, квадратный корень из значения или длину заданного текста) и вернуть его как результат функции; это то, что делает функции Python родственниками математических понятий.
Откуда берутся функции?
- Они могут происходить из самого Python; функция print - одна из таких; такая функция представляет собой добавленную стоимость, полученную вместе с Python и его средой (она встроена); вам не нужно делать ничего особенного (например, просить у кого-нибудь что-нибудь), если вы хотите этим воспользоваться;
- они могут поступать из одного или нескольких названных модулей надстроек Python; некоторые модули поставляются с Python, для других может потребоваться отдельная установка - в любом случае все они должны быть явно связаны с вашим кодом (мы скоро покажем вам, как это сделать);
- вы можете написать их самостоятельно, поместив в свою программу столько функций, сколько захотите и сделаете, чтобы сделать ее проще, яснее и элегантнее.
Конечно, если вы собираетесь использовать какую-либо уже существующую функцию, вы не можете повлиять на ее имя, но когда вы начнете писать свои собственные функции, вам следует тщательно продумать свой выбор имен.
2. Как мы уже говорили ранее, функция может иметь:
Математические функции обычно принимают один аргумент, например, sin(x) принимает x, который является мерой угла.
С другой стороны, функции Python более универсальны. В зависимости от индивидуальных потребностей они могут принимать любое количество аргументов - столько, сколько необходимо для выполнения их задач. Примечание: любое число включает ноль - некоторые функции Python не нуждаются в аргументах.
print ("Hello, World!")
Несмотря на количество необходимых/предоставленных аргументов, функции Python настоятельно требуют наличия пары круглых скобок - открывающей и закрывающей соответственно.
Если вы хотите передать функции один или несколько аргументов, вы помещаете их в круглые скобки. Если вы собираетесь использовать функцию, которая не принимает никаких аргументов, вам все равно нужно иметь круглые скобки.
Примечание: чтобы отличать обычные слова от имен функций, поместите пару пустых скобок после их имен, даже если соответствующая функция требует один или несколько аргументов. Это стандартное соглашение.
Здесь мы говорим о функции print()
Есть ли аргументы у функции print() в нашем примере?
Конечно, есть, но какие?
- эффект;
- результат.
Математические функции обычно принимают один аргумент, например, sin(x) принимает x, который является мерой угла.
С другой стороны, функции Python более универсальны. В зависимости от индивидуальных потребностей они могут принимать любое количество аргументов - столько, сколько необходимо для выполнения их задач. Примечание: любое число включает ноль - некоторые функции Python не нуждаются в аргументах.
print ("Hello, World!")
Несмотря на количество необходимых/предоставленных аргументов, функции Python настоятельно требуют наличия пары круглых скобок - открывающей и закрывающей соответственно.
Если вы хотите передать функции один или несколько аргументов, вы помещаете их в круглые скобки. Если вы собираетесь использовать функцию, которая не принимает никаких аргументов, вам все равно нужно иметь круглые скобки.
Примечание: чтобы отличать обычные слова от имен функций, поместите пару пустых скобок после их имен, даже если соответствующая функция требует один или несколько аргументов. Это стандартное соглашение.
Здесь мы говорим о функции print()
Есть ли аргументы у функции print() в нашем примере?
Конечно, есть, но какие?
3. Единственным аргументом, передаваемым функции print() в этом примере, является строка:
print ("Hello, World!")
Как видите, строка разделяется кавычками - по сути, кавычки составляют строку - они вырезают часть кода и придают ей другое значение.
Вы можете себе представить, что цитаты говорят что-то вроде: текст между нами - это не код. Он не предназначен для выполнения, и вы должны принять его как есть.
Практически все, что вы поместите в кавычки, будет восприниматься буквально, не как код, а как данные. Попробуйте поиграть с этой конкретной строкой - измените ее, введите новое содержимое, удалите часть существующего содержимого.
Существует несколько способов указать строку внутри кода Python, но пока этого достаточно.
print ("Hello, World!")
Как видите, строка разделяется кавычками - по сути, кавычки составляют строку - они вырезают часть кода и придают ей другое значение.
Вы можете себе представить, что цитаты говорят что-то вроде: текст между нами - это не код. Он не предназначен для выполнения, и вы должны принять его как есть.
Практически все, что вы поместите в кавычки, будет восприниматься буквально, не как код, а как данные. Попробуйте поиграть с этой конкретной строкой - измените ее, введите новое содержимое, удалите часть существующего содержимого.
Существует несколько способов указать строку внутри кода Python, но пока этого достаточно.
До сих пор вы узнали о двух важных частях кода: функции и строке. Мы говорили о них с точки зрения синтаксиса, но теперь пора обсудить их с точки зрения семантики.
4. Имя функции (в данном случае print ) вместе с круглыми скобками и аргументом(ами) формирует вызов функции.
Вскоре мы обсудим это более подробно, но сейчас мы должны пролить на это немного света.
print("Hello, World!")
Что происходит, когда Python встречает вызов, подобный приведенному ниже?
function_name(argument)
Давайте посмотрим:
Вскоре мы обсудим это более подробно, но сейчас мы должны пролить на это немного света.
print("Hello, World!")
Что происходит, когда Python встречает вызов, подобный приведенному ниже?
function_name(argument)
Давайте посмотрим:
- Сначала Python проверяет, является ли указанное имя допустимым (он просматривает свои внутренние данные, чтобы найти существующую функцию имени; если этот поиск не удается, Python прерывает код);
- во-вторых, Python проверяет, позволяют ли требования функции к количеству аргументов вызывать функцию таким образом (например, если конкретная функция требует ровно два аргумента, любой вызов, доставляющий только один аргумент, будет считаться ошибочным и прервет выполнение кода исполнение);
- в-третьих, Python на мгновение оставляет ваш код и переходит к функции, которую вы хотите вызвать; конечно, он также принимает ваши аргументы и передает их / их функции;
- в-четвертых, функция выполняет свой код, вызывает желаемый эффект (если есть), оценивает желаемый результат (ы) (если есть) и завершает свою задачу;
- наконец, Python возвращается к вашему коду (к месту сразу после вызова) и возобновляет выполнение.