Bekerja dengan fungsi python

Bekerja dengan fungsi python

Semasa pengaturcaraan, kami sering melakukan tugas yang sama berulang kali, seperti melakukan penambahan nombor atau mencetak pernyataan yang sama dengan input yang berbeza. Ini adalah contoh umum, tetapi untuk ini anda lebih suka menulis kod yang sama 10 kali atau sekali sahaja?

Itulah tujuan fungsi, mereka adalah kod yang hanya ditakrifkan sekali untuk tugas tertentu dan datang dengan fungsi yang boleh diguna semula supaya pengguna dapat memanggilnya setiap kali mereka ingin melaksanakan tugas. Ini menjadikan program anda dapat difahami dan debugging lebih mudah.

Kadang -kadang fungsi memerlukan beberapa input dan kadang -kadang mereka mungkin atau tidak boleh mengembalikan nilai, tetapi semua ini bervariasi dari fungsi menjadi fungsi dan tugas yang diberikan kepada fungsi khusus itu. Di Python, fungsi adalah bahagian penting yang mungkin ditentukan pengguna atau terbina dalam. Dalam artikel ini, kita akan membincangkan fungsi dalam python, jenis fungsi, bagaimana untuk menentukan mereka sepanjang contoh untuk pemahaman anda yang lebih baik.

Fungsi dalam Python

Terdapat empat jenis di mana fungsi dalam Python dikategorikan dan masing -masing berguna dengan cara sendiri, berikut adalah kategori ini:

  • Fungsi yang ditentukan oleh pengguna: Ini adalah fungsi yang dibuat oleh pengguna untuk tugas mereka sendiri, dan kerumitan mereka boleh berbeza -beza bergantung kepada tugas yang diberikan kepada mereka.
  • Fungsi terbina dalam: Ini sudah ditakrifkan dalam python yang membantu pengguna untuk melaksanakan tugas dengan mudah tanpa membuat fungsi. Fungsi tersebut dicetak (), min (), max () dan banyak lagi.
  • Fungsi Rekursif: Fungsi yang mempunyai keupayaan untuk memanggil diri mereka dan melaksanakan sehingga hasil dicapai dipanggil fungsi rekursif.
  • Fungsi Lambda: Fungsi -fungsi yang tidak diisytiharkan dengan kata kunci "def" disebut sebagai fungsi tanpa nama atau lambda.

Mari memahami setiap ini dengan contoh untuk membantu anda memahami konsep fungsi yang lebih baik.

Fungsi yang ditentukan oleh pengguna

Fungsi -fungsi dalam python yang pengguna ditakrifkan sendiri untuk melaksanakan tugas -tugas tertentu dalam program mereka adalah fungsi pengguna yang ditentukan. Fungsi ini mengurangkan kerumitan program sebagai sebahagian kecil kod dipanggil dan digunakan semula untuk melaksanakan tugas tertentu dengan input yang berbeza.

Oleh itu, program ini menjadi difahami dan kurang kompleks dengan debugging yang lebih mudah. Ini juga berguna kerana kadang -kadang pemaju mengusahakan projek yang lebih besar, jadi kerumitannya dibahagikan kepada pelbagai fungsi dan oleh itu projek -projek tersebut menjadi mudah untuk debug kemudian kerana anda hanya perlu pergi dan mencari kesilapan dalam fungsi tertentu dan bukan keseluruhan kod.

Sintaks:

Tentukan NameOfOffunction (Arg1, Arg2, ..., Argn): Pernyataan [s] .. 

Di sini:

  • NameOffunction: Namakan anda menentukan fungsi yang boleh menjadi sesuatu.
  • Arg1, Arg2, Argn: Bilangan hujah yang boleh menjadi tunggal, berganda atau tidak.
  • Pernyataan [s]: Barisan kod dilaksanakan dan tindakan dilakukan setelah fungsi dipanggil.

Di sini dalam sistem Linux kami, kami telah membuat fail di desktop kami dengan nama "Python.py ”bersama dengan kod yang disimpan di dalamnya dan kami akan menjalankan fail itu menggunakan arahan yang disediakan di bawah di mana python3.9 adalah versi python yang digunakan:

Skrip Python3.py  

Contoh:

Contoh paling mudah dari fungsi yang ditentukan pengguna adalah pernyataan percetakan mudah yang dicetak apabila fungsi dipanggil menggunakan pembina "MyFunction ()".

def myFunction (): cetak ("hello, itu fungsi yang saya tentukan") myFunction ()
1234def myFunction (): cetak ("hello, itu fungsi yang saya tentukan") myFunction ()
Output hello, itu fungsi yang saya tentukan 

Contoh:

Dalam contoh ini, kami menentukan fungsi tambahan yang mengambil dua nombor sebagai hujah dan menambahnya, hasilnya dikembalikan apabila fungsi dipanggil.

# Program untuk fungsi yang ditentukan oleh pengguna def tambahanNumbers (i, j): sum = i + j pulangan sum num1 = 10 num2 = 4 cetak ("jumlah", tambahanFnumbers (num1, num2))
12345678910# Program untuk fungsi yang ditentukan oleh pengguna def tambahanNumbers (i, j): sum = i + j pulangan sum num1 = 10num2 = 4 cetak ("jumlah", penambahanNumbers (num1, num2))

Sekarang jika kita menjalankan fail, ia akan memaparkan output berikut yang menunjukkan bagaimana fungsi berfungsi.

Jumlah output ialah 14 

Fungsi terbina dalam

Terdapat 68 fungsi terbina dalam yang tersedia untuk digunakan di Python untuk memudahkan tugas untuk pemaju. Fungsi -fungsi ini sudah ditakrifkan supaya pengguna tidak perlu menentukan fungsi untuk tugas yang paling mudah. Mari lihat beberapa fungsi terbina dalam ini di Python.

A. semua() Fungsi Python:

The semua() Fungsi di Python mengambil satu hujah yang boleh dimiliki yang boleh menjadi tuple, senarai atau kamus dan mengembalikan nilai boolean. Benar dikembalikan apabila unsur -unsur yang boleh dimiliki adalah benar, lain -lain palsu dikembalikan.

Contoh:

# kosong i = [] cetak (semua (i)) # semua nilai benar i = [1, 6, 5, 9] cetak (semua (i)) # semua nilai palsu i = [0, palsu] cetak (semua (i)) # Satu nilai palsu i = [1, 2, 4, 0] cetak (semua (i)) # satu nilai sebenar i = [0, palsu, 5] cetak (semua (i))
12345678910111213141516171819# kosong iterveri = [] cetak (semua (i)) # semua nilai truei = [1, 6, 5, 9] cetak (semua (i)) # semua nilai falseI = [0, false] cetak (semua (i) ) # satu nilai palsu = [1, 2, 4, 0] cetak (semua (i)) # satu benar valuei = [0, palsu, 5] cetak (semua (i))
Output benar palsu palsu palsu 

B. tong () Fungsi Python:

The tong () fungsi mengambil dalam parameter integer tunggal dan mengembalikan nilai binari integer tertentu. Sekiranya parameter yang diluluskan bukan integer, fungsi perlu melaksanakan kaedah _index_ () untuk mengembalikan integer.

Contoh:

i = 10 cetak ('Nilai binari 10 adalah:', bin (i))
123i = 10 cetak ('Nilai binari 10 adalah:', bin (i))
Output Nilai binari 10 ialah: 0b1010 

C. bool () Fungsi Python:

The bool () Fungsi dalam python biasanya mengambil satu nilai parameter dan mengembalikan nilai boolean. Sekiranya tiada parameter diluluskan atau palsu, tiada, angka (0.0, 0) Jenis parameter diluluskan, nilai boolean palsu dikembalikan, jika tidak benar dikembalikan.

Contoh:

i = [] cetak (bool (i)) i = [0] cetak (bool (i)) i = cetak benar (bool (i)) i = 0 cetak (bool (i)) i = none print (bool i)) i = 'hello' cetak (bool (i))
1234567891011121314151617i = [] cetak (bool (i)) i = [0] cetak (bool (i)) i = trueprint (bool (i)) i = 0print (bool (i)) i = noneprint (bool (i)) i = 'hello'print (bool (i))
Output palsu benar benar palsu palsu 

D. len () Fungsi Python:

The len () Fungsi di Python sama ada mengambil rentetan, senarai, tuple, atau koleksi seperti kamus dan mengembalikan panjangnya dalam bilangan bulat.

Contoh:

i = [] cetak (i, 'panjang', len (i)) i = [5, 5, 3] cetak (i, 'panjang', len (i)) i = (5, 2, 3) cetak (i, 'panjang adalah', len (i)) i = julat (1, 5) cetak ('panjang', i, 'adalah', len (i))
1234567891011i = [] cetak (i, 'panjang', len (i)) i = [5, 5, 3] cetak (i, 'panjang', len (i)) i = (5, 2, 3) cetak (i, 'panjang adalah', len (i)) i = julat (1, 5) cetak ('panjang', i, 'adalah', len (i))
Panjang output [] panjang 0 [5, 5, 3] adalah panjang 3 (5, 2, 3) adalah 3 panjang julat (1, 5) ialah 4 

E. terbalik () Fungsi Python:

The terbalik () Fungsi mengambil dalam satu parameter dan mengembalikan output sebagai iterator terbalik.

Contoh:

# untuk rentetan i = 'hello' cetak (senarai (dibalikkan (i)))) # untuk tuple i = ('h', 'e', ​​'l', 'l', 'o') cetak (senarai (dibalikkan (dibalikkan ( i))) # untuk julat i = julat (4, 6) cetak (senarai (dibalikkan (i)))) # untuk senarai i = [1, 2, 3, 4, 5] cetak (senarai (dibalikkan (i)) ) [python]
 Output ['o', 'l', 'l', 'e', ​​'h'] ['o', 'l', 'l', 'e', ​​'h'] [5, 4] [5 , 4, 3, 2, 1] 

Fungsi rekursif

Fungsi yang boleh memanggil diri mereka berulang kali dalam gelung untuk mencapai hasil yang dikenali sebagai fungsi rekursif. Di sini kami telah memberikan contoh klasik penggunaan fungsi rekursif yang mencari faktorial nombor. Dalam ini FactorialFunc () secara rekursif memanggil dirinya dengan integer positif sebagai parameter, bilangannya berkurangan sehingga mencapai 1 yang merupakan keadaan asas. Setiap fungsi rekursif mempunyai keadaan asas yang menamatkan program atau jika tidak, ia akan terus memanggilnya secara rekursif. Contoh: [python] def factorialFunc (x): jika i == 1: kembali 1 lain: kembali (i * factorialfunc (i-1)) num = 5 cetak ("factorial", num, "is", factorialfunc (num) )
12345678910111213141516171819202122223242526272829303132333435363737383940414243# untuk stringi = 'hello'print (senarai (dibalikkan (i)))) # untuk tuplei = (' h ',' e ',' l ',' l ',' o ') cetak (senarai (dibalikkan (i) )) # untuk rangei = julat (4, 6) cetak (senarai (dibalikkan (i))) # untuk listi = [1, 2, 3, 4, 5] cetak (senarai (dibalikkan (i))) [python]
Output ['o', 'l', 'l', 'e', ​​'h'] ['o', 'l', 'l', 'e', ​​'h'] [5, 4] [5 , 4, 3, 2, 1]

Fungsi rekursif

Fungsi yang boleh memanggil diri mereka berulang kali dalam gelung untuk mencapai hasil yang dikenali sebagai fungsi rekursif. Di sini kami telah memberikan contoh klasik penggunaan fungsi rekursif yang mencari faktorial nombor. Dalam ini FactorialFunc () secara rekursif memanggil dirinya dengan integer positif sebagai parameter, bilangannya berkurangan sehingga mencapai 1 yang merupakan keadaan asas. Setiap fungsi rekursif mempunyai keadaan asas yang menamatkan program atau jika tidak, ia akan terus memanggilnya secara rekursif. Contoh:[python] def factorialFunc (x): jika i == 1: kembali 1 lain: kembali (i * factorialfunc (i-1)) num = 5print ("factorial of", num, "is", factorialfunc (num))
Faktor output 5 ialah 120 

Fungsi Lambda

Fungsi tanpa nama di mana kita tidak menggunakan kata kunci "def" dan direktori menentukan mereka dipanggil fungsi lambda di python. Bukan "Def" Fungsi ini menggunakan kata kunci lambda untuk ditakrifkan. Ini kebanyakannya digunakan apabila pengguna perlu berfungsi pada kod yang lebih kecil yang tidak memerlukan pelbagai baris kod atau fungsi yang betul.

Sintaks:

Hujah Lambda: ungkapan 

Di sini, bilangan argumen boleh berganda tetapi hanya satu ungkapan yang dinilai dan dikembalikan.

Contoh:

# Program untuk fungsi lambda double = lambda i: i * 5 cetak (double (10))
123# Program untuk Lambda FunctionsDouble = Lambda I: I * 5 Print (Double (10))
Output 50 

Kesimpulan

Fungsi adalah bahagian penting dari setiap bahasa pengaturcaraan yang membantu kita mengurangkan kerumitan program dengan membahagikannya ke dalam pelbagai potongan kod yang boleh diguna semula. Python mempunyai empat jenis fungsi yang kami bincangkan dalam artikel ini. Pengguna boleh menentukan fungsi mereka sendiri atau menggunakan yang terbina dalam Python.

Tambahan pula, beberapa fungsi memanggil diri mereka berulang kali sehingga hasilnya dicapai. Artikel ini memberikan sintaks bagi setiap jenis fungsi bersama -sama dengan contoh untuk pemahaman anda yang lebih baik mengenai fungsi dalam python.