Walaupun peraturan skop Python secara amnya difahami, pilihan reka bentuk untuk mengekalkan pembolehubah kawalan dalam skop selepas keluar dari gelung masih menjadi misteri kepada sesetengah orang. Pertimbangkan kod berikut:
for foo in xrange(10): bar = 2 print(foo, bar)
Ini mencetak (9, 2), yang mungkin kelihatan berlawanan dengan intuisi kerana 'foo' mengawal gelung dan 'bar' ditakrifkan di dalamnya. Boleh difahami mengapa 'bar' boleh diakses di luar gelung, tetapi kegigihan 'foo' menimbulkan kebimbangan.
Penjelasan yang mungkin terletak pada kesederhanaan tatabahasa. Menugaskan kepada pembolehubah dalam gelung tidak memerlukan nyahkekaburan skop, kerana tugasan membayangkan skop. Mengisytiharkan pembolehubah dalam skop tertentu bukanlah amalan dalam Python. Kata kunci 'global' wujud untuk menyatakan tugasan skop global secara eksplisit.
Reka bentuk ini tidak menghalang penggunaan dengan ketara dan pengguna telah menerima kebolehan untuk mengakses pembolehubah kawalan dan ditentukan di luar gelung. Ia mengelakkan kerumitan skop dan nyahkekaburan, memudahkan kebolehbacaan dan pembangunan kod.
Atas ialah kandungan terperinci Mengapa Pembolehubah Kawalan Gelung `for` Python Kekal dalam Skop Selepas Gelung Selesai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!