argumente
în subiectul funcției definite de utilizator, am învățat despre definirea unei funcții și apelarea acesteia. În caz contrar, apelul funcției va duce la o eroare. Iată un exemplu.
Ieșire
Hello Monica, Good morning!
Aici, funcția greet()
are doi parametri.deoarece am numit această funcție cu două argumente, rulează fără probleme și nu primim nicio eroare.,dacă o numim cu un număr diferit de argumente, interpretul va afișa un mesaj de eroare. Mai jos este un apel la această funcție cu unul și fără argumente împreună cu mesajele de eroare respective.
>>> greet("Monica") # only one argumentTypeError: greet() missing 1 required positional argument: 'msg'
>>> greet() # no argumentsTypeError: greet() missing 2 required positional arguments: 'name' and 'msg'
Variabilă Funcție de Argumentele
până acum, funcții avut un număr fix de argumente. În Python, există și alte modalități de a defini o funcție care poate lua număr variabil de argumente.trei forme diferite de acest tip sunt descrise mai jos.,
argumentele implicite Python
argumentele funcționale pot avea valori implicite în Python.
putem oferi o valoare implicită unui argument folosind operatorul de atribuire (=). Iată un exemplu.
Ieșire
Hello Kate, Good morning!Hello Bruce, How do you do?
În această funcție, parametrul name
nu are o valoare prestabilită și este necesară (obligatorie) în timpul unui apel.,
Pe de altă parte, parametrul msg
are o valoare implicită de "Good morning!"
. Deci, este opțional în timpul unui apel. Dacă este furnizată o valoare, aceasta va suprascrie valoarea implicită.orice număr de argumente dintr-o funcție poate avea o valoare implicită. Dar odată ce avem un argument implicit, toate argumentele din dreapta sa trebuie să aibă și valori implicite.
aceasta înseamnă a spune că argumentele non-implicite nu pot urma argumentele implicite., De exemplu, dacă am fi definite antetul funcției de mai sus ca:
def greet(msg = "Good morning!", name):
Vom primi o eroare cum ca:
SyntaxError: non-default argument follows default argument
Python Keyword Argumente
Când am apela o funcție cu unele valori, aceste valori sunt atribuite argumentele în funcție de poziția lor.Python permite apelarea funcțiilor folosind argumente de cuvinte cheie. Când apelăm funcții în acest fel, ordinea (poziția) argumentelor poate fi modificată. Următoarele apeluri la funcția de mai sus sunt valabile și produc același rezultat.,
după cum putem vedea, putem amesteca argumentele poziționale cu argumentele cuvintelor cheie în timpul unui apel de funcții. Dar trebuie să ținem cont de faptul că argumentele de cuvinte cheie trebuie să urmeze argumente poziționale.
având un argument pozițional după argumente de cuvinte cheie va duce la erori. De exemplu, funcția de apel, după cum urmează:
greet(name="Bruce","How do you do?")
Va rezulta într-o eroare:
SyntaxError: non-keyword arg after keyword arg
Python Arbitrar de Argumente
Uneori, nu știm în avans numărul de argumente pe care va fi trecut într-o funcție., Python ne permite să gestionăm acest tip de situație prin apeluri funcționale cu un număr arbitrar de argumente.
în definiția funcției, folosim un asterisc ( * ) înainte de numele parametrului pentru a desemna acest tip de argument. Iată un exemplu.
Output
Hello MonicaHello LukeHello SteveHello John
aici, am numit funcția cu mai multe argumente. Aceste argumente se înfășoară într-un tuplu înainte de a fi trecute în funcție. În interiorul funcției, folosim o buclă for
pentru a prelua toate argumentele înapoi.
Lasă un răspuns