Argument a parametr: różnica między argumentem a parametrem [z przykładem]
Opublikowany: 2021-02-05Funkcje w języku programowania to fragment kodu, który koncentruje się na ponownym wykorzystaniu i abstrakcji w aplikacji. Można je wywoływać dowolną liczbę razy w programie, w obrębie lub z innego pliku. Jest to podstawowa koncepcja przyjęta w każdym języku programowania i jest bardzo pomocna również podczas ćwiczenia uczenia maszynowego.
Istnieją przypadki, w których chcemy wykonać niestandardowe kroki przetwarzania wstępnego dostosowane do konkretnego przypadku użycia i może być bałagan, jeśli ten kod przyćmiewa inne istotne zadania związane z nauką o danych. Izolacja tego kodu i jednokrotne wywołanie go w celu wykonania fragmentu operacji jest powszechną praktyką promującą czyste kodowanie.
Podczas tworzenia funkcji istnieje kilka danych wejściowych, które użytkownik może pobrać, aby przetworzyć instrukcje zawarte w tej funkcji. Te dane wejściowe są zwykle mylone w przypadku dwóch terminologii: argumentów i parametrów. Przyjrzyjmy się różnicy między nimi i dowiedzmy się, którego użyć w którym miejscu.
Spis treści
Parametry
Są to zmienne, które są używane w funkcji i są zadeklarowane w nagłówku funkcji. Specyfikacja typu danych zależy od języka programowania użytego w definicji funkcji. Te zmienne pomagają w całkowitym wykonaniu funkcji. Mogą być również ukute jako zmienne lokalne, ponieważ nie są dostępne poza funkcją. Dostęp do wartości zawartych w tych parametrach można uzyskać tylko z instrukcji powrotu funkcji lub jeśli zakres tych parametrów jest globalny.
Argumenty
Zdefiniowane funkcje mogą być wywoływane w dowolnym miejscu w pliku lub w innym pliku w katalogu, w zależności od przypadku użycia. Argumenty to zmienne, które są przekazywane do funkcji w celu wykonania. Różni się od parametrów, ponieważ argumenty są rzeczywistymi wartościami przekazywanymi do nagłówka funkcji.
Wartości argumentów są przypisane do parametrów funkcji i dlatego funkcja może przetwarzać te parametry w celu uzyskania końcowego wyniku. Argumenty są dostępne w całym programie w zależności od zakresu przypisanej zmiennej. Mogą one być pobierane od strony użytkownika lub mogą być predefiniowanymi zmiennymi.
Przykład lepszego zrozumienia
Argument i parametr mogą wydawać się zamienne, ale mają różne znaczenia w różnych miejscach. Rozważmy przykład, w którym chcemy obliczyć pole prostokąta. Zdajemy sobie sprawę, że wzór na obwód prostokąta przyjmuje długość i szerokość prostokąta.
Oto jak funkcja będzie wyglądać w programowaniu w Pythonie:
def recPerimeter(długość, szerokość):
obwód = 2*(długość + szerokość)
obwód powrotny
długość_arg, szerokość_arg = lista(map(int, input().split()))
obwód = recPerimeter(arg_długości, argument_szerokości)
drukuj (obwód)
W Javie ta sama funkcja miałaby postać:
importuj java.util.Scanner;
klasa publiczna obwód {
public static int recPerimeter(długość int, szerokość int){
int obwód = 2 *(długość + szerokość);
obwód powrotny;
}
public static void main(String[] args) {

Skaner scn = nowy skaner(System.in);
int długość_arg = scn.nextInt();
int szerokość_arg = scn.nextInt();
int perimeter_output = recPerimeter(arg_długości, arg_szerokości);
System.out.println(obwód_wyjście);
}
}
Zgodnie z definicją parametrami są długość i szerokość w nagłówkach funkcji zdefiniowanych w Pythonie lub Javie, a argumentami w programie arg_długość, arg_szerokość. Dowodzi to również, że argumenty i parametry nie są specyficzne dla języka i są raczej pojęciem używanym do definicji funkcji.
Parametry formalne a rzeczywiste
Odkrywając argumenty i parametry natkniesz się na inny zestaw pojęć, tj. parametry formalne i nieformalne. Głównym zamieszaniem może być to, że są to podczęści parametrów, ale tak nie jest. Parametry formalne tutaj odnoszą się do parametrów w funkcjach, a parametry rzeczywiste odnoszą się do argumentów, które przekazujemy podczas wywoływania funkcji.
Również Checkout: Pomysły i tematy projektów Python
Wniosek
Argumenty i parametry są używane w dowolnym języku programowania. Terminy te mogą być mylące, gdy odnoszą się do jakichkolwiek materiałów źródłowych i zalecane jest ich jasne zrozumienie. Wejścia funkcyjne są najczęstszym zastosowaniem tych notacji.
Jeśli jesteś zainteresowany nauką o danych, sprawdź program IIIT-B i upGrad Executive PG w dziedzinie Data Science, który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne warsztaty praktyczne, mentoring z ekspertami z branży, 1 -on-1 z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.
Jakie są istotne różnice między parametrami i argumentami?
Parametry -
1. Są one określone podczas definicji funkcji i nazywane parametrami.
2. Nazywa się je również parametrami formalnymi.
3. Wartości przekazywane jako parametry są zmiennymi lokalnymi i są im przypisywane wartości argumentów podczas wywołania funkcji.
Argumenty -
1. Wartości przekazywane podczas wywołania funkcji nazywane są argumentami.
2. Są one również nazywane parametrami rzeczywistymi.
3. Każdy argument jest przypisywany do parametru, gdy funkcja jest zdefiniowana.
Czy argumenty i parametry mogą być używane zamiennie?
Rozważ poniższy program, aby zrozumieć różnicę między parametrem a argumentem.
Załóżmy, że masz definicję funkcji „myFunc” z parametrami num1 i num2 i ta funkcja zwraca sumę wartości przekazanych w parametrze. Teraz chcesz wywołać tę funkcję wewnątrz funkcji main z dwiema różnymi wartościami do dodania. Wartości, które przekazujesz podczas wywołania funkcji, są nazywane argumentami funkcji.
W powyższym przykładzie wyraźnie widać różnicę między parametrami a argumentami. Zmienne „num1” i „num2”, gdy są określone w definicji funkcji, są parametrami, a gdy te zmienne są przekazywane do funkcji podczas wywołania funkcji, są argumentami funkcji „myFunc”.
Ile typów argumentów funkcji jest w Pythonie?
W Pythonie funkcja może akceptować 3 typy argumentów, które opisano poniżej:
1. Argumenty domyślne: Są to argumenty, które są przypisane do parametrów w czasie definiowania funkcji. Operator przypisania „=” służy do przypisywania wartości domyślnych (lub argumentów domyślnych) do parametrów funkcji. Np.: def display(wynik = 10).
2. Argumenty słów kluczowych: Te argumenty są przekazywane przez określenie słów kluczowych lub nazw. Ponieważ słowa kluczowe są przekazywane zgodnie z wartościami argumentów, kolejność argumentów nie ma znaczenia.
3. Argumenty arbitralne: Jak sama nazwa wskazuje, funkcja przyjmująca argumenty arbitralne może przyjąć dowolną liczbę argumentów. Gwiazdka „*” jest używana w definicji funkcji, aby określić, że funkcja powinna przyjmować dowolne argumenty.