Python függvények (def): Definíció példákkal

Ebben a cikkben megismerheti a függvényeket, mi a függvény, a szintaxist, az összetevőket és a függvények típusait. Ezenkívül megtanul egy függvény létrehozását a Pythonban.

Videó: Bevezetés a Python funkciókba

Mi a függvény a Pythonban?

A Pythonban a függvény egy kapcsolódó utasítások csoportja, amely egy adott feladatot hajt végre.

A funkciók segítenek programunkat kisebb és moduláris darabokra bontani. Ahogy programunk egyre nagyobb lesz, a funkciók szervezettebbé és kezelhetőbbé teszik azt.

Ezenkívül elkerüli az ismétlést és újrafelhasználhatóvá teszi a kódot.

A funkció szintaxisa

 def function_name (paraméterek): "" "docstring" "" utasítás (ok)

Fent látható egy függvénydefiníció, amely a következő összetevőkből áll.

  1. Kulcsszó, defamely a függvény fejlécének kezdetét jelöli.
  2. Funkció neve a függvény egyedi azonosításához. A függvények elnevezése ugyanazokat a szabályokat követi, mint az azonosítók írása a Pythonban.
  3. Paraméterek (argumentumok), amelyeken keresztül értékeket adunk át egy függvénynek. Ezek nem kötelezőek.
  4. Kettőspont (:) a funkciófejléc végének jelölésére.
  5. Opcionális dokumentációs karakterlánc (docstring) a funkció működésének leírására.
  6. Egy vagy több érvényes Python utasítás, amely a függvénytestet alkotja. Az állításoknak azonos behúzási szinttel kell rendelkezniük (általában 4 szóköz).
  7. Opcionális returnutasítás az érték visszaadásához a függvényből.

Példa egy függvényre

 def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!")

Hogyan hívhatunk függvényt a pythonban?

Miután definiáltunk egy függvényt, meghívhatjuk egy másik függvényből, programból vagy akár a Python parancssorból. Egy függvény meghívásához egyszerűen beírjuk a függvény nevét a megfelelő paraméterekkel.

 >>> greet('Paul') Hello, Paul. Good morning!

Megjegyzés: Próbálja meg futtatni a fenti kódot a Python programban a funkciódefinícióval a kimenet megtekintéséhez.

 def greet(name): """ This function greets to the person passed in as a parameter """ print("Hello, " + name + ". Good morning!") greet('Paul')

Instrukciók

A függvényfejléc utáni első karakterláncot docstring-nek hívják, és rövid a dokumentációs karakterláncnak. Röviden arra szolgál, hogy elmagyarázzuk, mi a funkció.

Bár opcionális, a dokumentáció jó programozási gyakorlat. Hacsak nem emlékszik, mit vacsorázott a múlt héten, mindig dokumentálja a kódját.

A fenti példában van egy docstring közvetlenül a függvény fejléce alatt. Általában hármas idézőjeleket használunk, hogy a docstring akár több sorra is kiterjedhessen. Ez a karakterlánc __doc__a funkció attribútumaként áll rendelkezésünkre.

Például :

A kimenet megtekintéséhez próbálkozzon a következők futtatásával a Python héjba.

 >>> print(greet.__doc__) This function greets to the person passed in as a parameter

Ha többet szeretne megtudni a Python docstringjeiről, látogasson el a Python Docstrings oldalra.

A visszatérési nyilatkozat

Az returnutasítás segítségével kiléphetünk egy függvényből, és visszatérhetünk arra a helyre, ahonnan meghívtuk.

A visszatérés szintaxisa

 return (kifejezés_lista)

Ez az utasítás tartalmazhat olyan kifejezést, amelyet kiértékelnek, és az érték visszaadódik. Ha az utasításban nincs kifejezés, vagy returnmaga az utasítás nincs jelen egy függvényen belül, akkor a függvény visszaadja az Noneobjektumot.

Például:

 >>> print(greet("May")) Hello, May. Good morning! None

Itt Nonevan a visszatérő érték, mivel greet()a név közvetlenül kinyomtatja, és nem returnhasznál utasítást.

Példa a visszatérésre

 def absolute_value(num): """This function returns the absolute value of the entered number""" if num>= 0: return num else: return -num print(absolute_value(2)) print(absolute_value(-4))

Kimenet

 2 4

Hogyan működik a Funkció a Pythonban?

Funkciók működése a Pythonban

A változók hatóköre és élettartama

A változó hatóköre a programnak az a része, ahol a változó felismerésre kerül. A függvényen belül definiált paraméterek és változók a függvényen kívülről nem láthatók. Ezért helyi hatókörrel rendelkeznek.

A változó élettartama az az időtartam, amelyen keresztül a változó kilép a memóriából. A függvényeken belüli változók élettartama mindaddig tart, amíg a függvény végrehajtja.

Amint visszatérünk a funkcióból, megsemmisülnek. Ezért a függvény nem emlékszik egy változó értékére a korábbi hívásokból.

Itt egy példa a függvényen belüli változó hatókörének bemutatására.

 def my_func(): x = 10 print("Value inside function:",x) x = 20 my_func() print("Value outside function:",x)

Kimenet

 Value inside function: 10 Value outside function: 20

Here, we can see that the value of x is 20 initially. Even though the function my_func() changed the value of x to 10, it did not affect the value outside the function.

This is because the variable x inside the function is different (local to the function) from the one outside. Although they have the same names, they are two different variables with different scopes.

On the other hand, variables outside of the function are visible from inside. They have a global scope.

We can read these values from inside the function but cannot change (write) them. In order to modify the value of variables outside the function, they must be declared as global variables using the keyword global.

Types of Functions

Basically, we can divide functions into the following two types:

  1. Beépített függvények - A Pythonba beépített funkciók.
  2. Felhasználó által definiált funkciók - A felhasználók által meghatározott funkciók.

érdekes cikkek...