Python

Функции и аргументы

"При вызове функции, ей передаются аргументы" Кто нибудь, объясните мне эту фразу понятным языком
на примере из математики

есть функция f(x)=5x+1

x - аргумент

например, если в качестве аргумента функции передать 1, то

f(1)=5*1+1=6

т е аргумент - те данные, что функция получает, чтобы их обработать
Андрей Штевский
Андрей Штевский
69 560
Лучший ответ
Алымбек Татыбеков Т. е. х выступает в роли переменной? Зачем тогда вообще нужна функция?
Из функционального программирования:
Функция - суть выражение, которое при своем вычислении использует значения некоторых переменных.
Часть переменных "видна" только внутри функции и устанавливается непосредственно в момент вызова функции. (так называемые - связанные переменные. )
Например:
F(x) = x^2 + 1

Переменная x - связанная переменная, аргумент функции, устанавливается в момент вызова функции.
Т. е.
F(10)-> x=10; F(x = 10): 10^2 +1 -> 101

Как-то так
Нужно помнить, что переменные также могут быть "свободными" - т. е. их связывание с значением происходит независимо от вызова функции. Например:

y = 10

F(x) = x^2 + y

y =2

F(10) -> 102

y = 10

F(10) -> 110

Свободные переменные не являются аргументами функции!

Главное свойство связанных переменных - это то, что не важно - как они называются. Если их переименовать во всех выражениях внутри функции, ее результат не должен изменяться.

Передача аргументов и есть процесс связывания переменных их списка аргументов с значениями - перед вычислением выражения внутри функции.

F(1): x связывается с значением 1, потом вычисляется выражение внутри функции
F(10): x связывается с 10.

Как это реализовано технически - зависит от языка, среды выполнения и т. д.
Например, связанные переменные могут создаваться на стеке при вызове функции и в них записываются значения аргументов. После завершения работы функции стек отматывается и эти переменные просто "исчезают".
Ан
Аноним
84 349
Понятия аргумент и функция тут имеют почти тот же смысл, что и в алгебре. Это специально оформленный кусок программы, которая на вход получает аргументы и на выходе выдаёт результат вычисления функции. На практике это имеет смысл, если фу-я в программе используется многократно, чтобы не повторять один и тот же набор команд.
Kostas Kostarica
Kostas Kostarica
83 844
Это ясная и вразумительная фраза на простом и понятном языке!..
СР
Семён Рогов
28 648
Функцию можно представить как отдельно оформленную часть программы, выполняющую описаный в ней алгоритм.
Аргументы - данные которые мы передаем функции для обработки
Алымбек Татыбеков Как написать в функции такую программу:
а = 1
b = 2
c = a + b
print (c)