Rumah > pembangunan bahagian belakang > Tutorial Python > Pengenalan kepada asas pengaturcaraan berfungsi Python

Pengenalan kepada asas pengaturcaraan berfungsi Python

PHPz
Lepaskan: 2023-04-11 22:49:08
ke hadapan
1600 orang telah melayarinya

Pengenalan kepada asas pengaturcaraan berfungsi Python

Pengetahuan asas tentang fungsi

Kuasai spesifikasi sintaks asas dan kaedah panggilan bagi fungsi tersuai, serta kuasai peraturan penggunaan dan panggilan pelbagai parameter fungsi.

1. Fungsi Python

  • Fungsi (Fungsi) ialah segmen kod boleh guna semula yang teratur yang digunakan untuk melaksanakan fungsi tunggal atau berkaitan. Fungsi
  • boleh meningkatkan modulariti aplikasi dan penggunaan semula kod.
  • Kami telah pun didedahkan kepada banyak fungsi terbina dalam yang disediakan oleh Python, seperti print().
  • Tetapi anda juga boleh mencipta fungsi anda sendiri, yang dipanggil fungsi yang ditentukan pengguna.

2. Peraturan asas untuk menyesuaikan fungsi

Anda boleh mentakrifkan fungsi dengan fungsi yang anda mahukan:

  1. A blok kod fungsi bermula dengan kata kunci def, diikuti dengan nama pengecam fungsi dan kurungan ( ).
  2. Sebarang parameter dan argumen yang masuk mesti diletakkan di antara kurungan. Parameter boleh ditakrifkan antara kurungan.
  3. Pernyataan baris pertama fungsi boleh secara pilihan menggunakan rentetan dokumentasi - untuk menyimpan perihalan fungsi.
  4. Kandungan fungsi bermula dengan titik bertindih dan diinden.
  5. returm [ungkapan] menamatkan fungsi dan secara pilihan mengembalikan nilai kepada pemanggil.
  6. Kembali tanpa ungkapan adalah sama dengan mengembalikan Tiada.

3 Sesuaikan sintaks fungsi

Tentukan sintaks fungsi:

def 函数标识名称(参数列表):
“函数_文档字符串,对函数进行说明"
函数体
return [表达式]
Salin selepas log masuk

Secara lalai, nilai parameter dan nama parameter diisytiharkan mengikut fungsi Susunan definisi sepadan.

4. Panggilan fungsi

Tentukan fungsi dan hanya beri nama fungsi, nyatakan parameter yang terkandung dalam fungsi dan struktur blok kod.

Selepas struktur asas fungsi ini selesai, anda boleh melaksanakannya melalui panggilan fungsi lain atau terus daripada gesaan Python.

Contoh berikut memanggil fungsi printme ():

Pengenalan kepada asas pengaturcaraan berfungsi Python

Hasil output selepas panggilan ialah:

Pengenalan kepada asas pengaturcaraan berfungsi Python

4. Kata kunci pulangan

  • penyataan pengembalian [ungkapan] keluar dari fungsi dan secara selektif mengembalikan ungkapan kepada pemanggil.
  • Pernyataan pulangan tanpa nilai parameter mengembalikan Tiada.
  • Contoh sebelumnya tidak menunjukkan cara mengembalikan nilai Contoh berikut memberitahu anda cara melakukannya:

Pengenalan kepada asas pengaturcaraan berfungsi Python

5

Dalam python, jenis kepunyaan objek, dan pembolehubah tidak mempunyai jenis:

a=[1,2,3]
a="Runoob"
Salin selepas log masuk

Dalam kod di atas, [1,2,3] ialah jenis Senarai, "Runoob" ialah String jenis, dan pembolehubah a Ia tidak mempunyai jenis, ia hanyalah rujukan kepada objek (-penunjuk), yang boleh menjadi objek jenis Senarai atau objek jenis String.

Pengalihan parameter fungsi Python

  • Jenis tidak boleh ubah: Hantaran nilai dalam pengaturcaraan program, seperti integer, rentetan dan tupel. Sebagai contoh, fun(a) hanya memindahkan nilai a dan tidak menjejaskan objek itu sendiri. Contohnya, mengubah suai nilai keseronokan dalam(a) hanya mengubah suai objek yang disalin dan tidak menjejaskan objek itu sendiri. Kami sering memanggil ini melalui nilai.
  • Jenis pembolehubah: serupa dengan hantaran rujukan (laluan alamat) dalam pengaturcaraan, seperti senarai dan kamus. Sebagai contoh, fun(la) sebenarnya akan lulus la Selepas pengubahsuaian, keseronokan di luar juga akan terjejas.

Semua dalam Python ialah objek Dalam erti kata yang ketat, kita tidak boleh mengatakan sama ada untuk lulus mengikut nilai atau dengan rujukan.

6. Parameter

Berikut ialah jenis parameter formal yang boleh digunakan semasa memanggil fungsi:

  • Parameter yang diperlukan.
  • Parameter kata kunci.
  • Parameter lalai.
  • Parameter panjang tidak tentu.

Parameter yang diperlukan

Parameter yang diperlukan mesti dihantar ke dalam fungsi dalam susunan yang betul. Kuantiti apabila dipanggil mestilah sama seperti semasa diisytiharkan.

Contoh:

ch06-demo01-args-necessary.py
Salin selepas log masuk

Apabila memanggil fungsi greeting(), anda mesti lulus dalam parameter, jika tidak ralat sintaks akan berlaku:

Pengenalan kepada asas pengaturcaraan berfungsi Python

Parameter kata kunci

Parameter kata kunci berkait rapat dengan panggilan fungsi menggunakan parameter kata kunci untuk menentukan nilai parameter yang dihantar.

Menggunakan hujah kata kunci membolehkan fungsi dipanggil dalam susunan yang parameternya tidak konsisten dengan susunan di mana ia diisytiharkan, kerana penterjemah Python boleh memadankan nama parameter dengan nilai parameter.

Contoh:

ch06-demo02-keyword.py
Salin selepas log masuk

Contoh berikut menggunakan nama parameter apabila memanggil function printinfo():

Pengenalan kepada asas pengaturcaraan berfungsi Python

缺省参数

调用函数时,缺省参数的值如果没有传入,则被认为是默认值。

示例:

ch06-demo03-args-default.py
Salin selepas log masuk

打印默认的age,如果age没有被传入:

Pengenalan kepada asas pengaturcaraan berfungsi Python

Pengenalan kepada asas pengaturcaraan berfungsi Python

注意:缺省值必须放在最后一个参数。

不定长参数*args

可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数。

适用于当参数个数不确定或根据调用情况其参数个数会动态变化的情况。

基本语法如下:

def函数名称(formal args, *args ):
“函数_文档字符串"
函数体
retum [表达式]
Salin selepas log masuk

加了星号(* )的变量名会存放所有未命名的变量参数。选择不多传参数也可,可变长参数的类型为元组。

补充: **kw

**两个型号代表接受的是一个可变长度的 字典类型的参数。

因此,改参数必须以k-v值结构出现。

def函数名称(formal _args, **kw ):
“函数_文档字符串”
函数体
retum [表达式
Salin selepas log masuk

加了星号(** )的变量名会存放所有未命名的变量参数。选择不多传参数也可,可变长参数的类型为字典。

总结: *argv和**kw的区别

两个参数必须为函数定义中参数列表中的排名最后的参数。

*argv代表该参数位置可以放任意个数的数据,最终都会转换成元组数据类型在函数体内处理。

**kw代表该参数位置可以放k=v格式的数据,最终都会转换成字典类型数据安函数体内处理。

Atas ialah kandungan terperinci Pengenalan kepada asas pengaturcaraan berfungsi Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:51cto.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan