Tutorial Python untuk bukan pengatur cara/Fungsi: Perbezaan antara semakan

Kandungan dihapus Kandungan ditambah
Aurora (bincang | sumb.)
terjemah
Aurora (bincang | sumb.)
Baris 41:
Nilai mutlak 23 dan -23 adalah sama
 
Ciri utama program di atas adalah <code>def</code>. <code>def</code> (kependekan untuk ''define'' - definisi) dituruti oleh nama fungsi (<code>mutlak</code>). Kemudian parameter <code>num</code> dihantar daripada atur cara kepada fungsi mutlak() tadi. Kenyataan selepas <tt>:</tt> akan dilaksanakan apabila fungsi dipanggil. KenyatanKenyataan di dalam fungsi akan terus dilaksanakan sehingga kata kunci <code>return</code> ditemui atau engsotan fungsi berakhir. <code>return</code> akan mengembalikan nilai kepada atur cara utama.
 
Perhatikan nilai <code>a</code> dan <code>b</code> di atas tidak berubah. Fungsi boleh digunakan untuk mengulangi tugas yang tidak mengembalikan apa-apa nilai. Contoh:
Baris 52:
 
def print_welcome(name):
print "Selamat Datangdatang", name
hello()
Baris 60:
w = 4
h = 5
print "lebar =", w, "tinggi =", h, "keluasanluas =", area(w, h)
</source>
 
akan memaparkan:
 
<pre>
Hello
Hello
Selamat Datangdatang Kartini
lebar = 4 tinggi = 5 keluasanluas = 20
 
</pre>
Contoh tadi menunjukkan beberapa lagi perkara yang boleh dilakukan dengan '''Fungsi'''fungsi. Perhatikan bahawa tidak kisah sama ada argumen digunakan atau atau tidak, ataupun lebih dari satu argumen digunakan (bergantung kepada pengaturcara). Perhatikan juga bahawa fungsi tidak semestinya mengembalikan nilai.
<!-- Fungsi boleh digunakan untuk mengurangkan kod yang berulang-ulang (repetitive). -->
Perhatikan bahawa tidak kisah sama ada argument ada atau tidak (bergantung kepada pengaturcara).
Perhatikan juga '''Fungsi''' tidak semestinya mengembalikan nilai.
<!-- Fungsi boleh digunakan untuk mengurangkan kod yang berulang-ulang (repetitive). -->
 
=== Pembolehubah di dalam fungsi ===
Apabila membuang kod yang berulang, biasanya akan ada pembolehubahpemboleh didalamnyaubah di dalamnya. Dalam [[Python]], pembolehubahpemboleh ubah akan diuruskan dalamdengan cara yang istimewa. Setakat ini, semua pembolehubahpemboleh ubah yang dipakai adalah globalsejagat (didalamdi dalam program utama, diluardi luar fungsi).
Fungsi adamempunyai sejenis pembolehubahpemboleh ubah istimewa yang dipanggil '''pembolehubah"pemboleh ubah setempat'''" (''local variablesvariable''). PembolehubahPemboleh ubah jenis ini hanya akan wujud (secara maya) apabila fungsinya dipanggil/dijalankan.
Apabila pembolehubahpemboleh ubah setempat mempunyai nama yang sama dengan pembolehubahpemboleh globalubah sejagat, pembolehubahpemboleh ubah setempat yang akan dipanggil. Mungkin sedikit memeningkan, sila lihat contoh di bawah untuk penjelasan:
Mungkin sedikit memeningkan, sila lihat contoh dibawah untuk penjelasan:
 
<pre>