Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah Penting untuk Menggunakan Kata Kunci Global untuk Mengubah Suai Pembolehubah Global dalam Fungsi?

Mengapakah Penting untuk Menggunakan Kata Kunci Global untuk Mengubah Suai Pembolehubah Global dalam Fungsi?

Patricia Arquette
Patricia Arquetteasal
2024-10-19 12:09:01574semak imbas

Why is it Important to Use the Global Keyword to Modify Global Variables in Functions?

Memahami Pengubahsuaian Pembolehubah Global dalam Fungsi

Dalam pengaturcaraan, pembolehubah global dikongsi antara semua fungsi dalam atur cara. Mengubah suai pembolehubah global di dalam fungsi harus mencerminkan perubahannya sepanjang program. Walau bagaimanapun, keadaan tertentu boleh membawa kepada tingkah laku yang tidak dijangka, seperti yang diserlahkan dalam senario berikut.

Masalahnya:

Memandangkan coretan kod di bawah:

<code class="python">done = False

def function():
    for loop:
        code
        if not comply:
            done = True  #let's say that the code enters this if-statement

while done == False:
    function()</code>

Kod nampaknya cuba untuk keluar dari gelung while apabila pembolehubah yang dilakukan ditetapkan kepada True dalam fungsi. Walau bagaimanapun, isu timbul apabila function() tidak mengubah suai pembolehubah dilakukan global dengan betul, menyebabkan gelung sementara berterusan selama-lamanya.

Penyelesaian:

Masalahnya terletak pada skop fungsi. Fungsi mencipta ruang nama mereka sendiri, bermakna pembolehubah dilakukan dalam function() dicipta secara setempat dan tidak sama dengan pembolehubah dilakukan global. Untuk mengakses dan mengubah suai pembolehubah dilakukan global, kata kunci global mesti digunakan:

<code class="python">def function():
    global done
    for loop:
        code
        if not comply:
            done = True</code>

Menggunakan global done memastikan bahawa perubahan pada pembolehubah dilakukan yang dibuat dalam function() mempengaruhi pembolehubah global, mencetuskan keluar dari gelung while apabila ia ditetapkan kepada Benar.

Penjelasan:

Kata kunci global digunakan untuk mengisytiharkan dan mengubah suai pembolehubah global dari dalam skop setempat, seperti fungsi . Ia membenarkan fungsi berfungsi dengan pembolehubah asal dan bukannya mencipta salinan tempatan baharu. Dengan menggunakan global done, fungsi boleh mengubah suai global done variable, menjadikan perubahannya boleh diakses di luar fungsi.

Atas ialah kandungan terperinci Mengapakah Penting untuk Menggunakan Kata Kunci Global untuk Mengubah Suai Pembolehubah Global dalam Fungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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