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

Patricia Arquette
Lepaskan: 2024-10-19 12:09:01
asal
490 orang telah melayarinya

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!