Module: (Python) Subrutin: Prosedur dan Fungsi - 1


Problem

9 /11


Pembolehubah Tempatan dan Global

Theory Click to read/hide

Pembolehubah tempatan dan global

Pembolehubah yang diperkenalkan dalam program utama dipanggil global (atau dikongsi).

Anda boleh mengakses pembolehubah global daripada mana-mana subrutin. 

Selalunya perlu memperkenalkan pembolehubah tambahan yang hanya akan digunakan dalam subrutin. Pembolehubah sedemikian dipanggil setempat (atau setempat). Anda boleh bekerja dengan mereka hanya dalam subrutin di mana ia dicipta. Selebihnya rutin tidak "tahu" apa-apa tentang mereka.

Oleh itu, adalah mungkin untuk mengehadkan skop (skop) pembolehubah hanya kepada subrutin di mana ia benar-benar diperlukan. Dalam pengaturcaraan, teknik ini dipanggil enkapsulasi  - menyembunyikan pembolehubah daripada diubah dari luar.

Analisis tiga program:


 

Problem

Tulis prosedur dengan parameter n yang mengeluarkan pokok Krismas dengan mahkota ketinggian n. Atur cara utama mesti mengandungi input nilai n pembolehubah dan panggilan prosedur.< br />  
Contoh
Penerangan Program
1) Dalam atur cara ini, pembolehubah i ialah setempat. Jika tiada pembolehubah i dalam program utama, maka kita akan mendapat mesej ralat. Dan jika terdapat pembolehubah sedemikian (maka ia adalah pembolehubah global), maka nilainya dipaparkan pada skrin. ujian def(): cetakan(i)
2) Di sini, walaupun terdapat pembolehubah global i, pembolehubah tempatan baharu i akan dibuat dengan nilai 2 dan 2 akan muncul pada skrin. ujian def():   i = 2 cetakan(i)
3) Dalam program ini, terdapat pembolehubah global i dengan nilai 15. Nilainya boleh ditukar di dalam subrutin, untuk ini adalah perlu untuk mengisytiharkan secara eksplisit bahawa ia adalah global ( gunakan arahan global ).
Prosedur ini akan berfungsi dengan pembolehubah global i dan ia akan diberikan nilai baharu 2. Nilai 2 dipaparkan.
ujian def():   global i i = 2 # program utama i = 15 cetak(i)
# Input Output
1 5     o    ooo   ooooo  ooooooo ooooooooo