Python ialah bahasa yang ditafsirkan, dan pengisytiharan berubah-ubah tidak diperlukan dalam proses menulis kod. Walau bagaimanapun, apabila rujukan pembolehubah yang tidak diisytiharkan ditemui semasa pelaksanaan program, ralat pembolehubah yang tidak diisytiharkan, yang dikenali sebagai "NameError", dilemparkan.
Ralat jenis ini biasanya berlaku dalam situasi berikut:
- Nama pembolehubah dieja dengan salah
Jika nama pembolehubah yang tidak wujud dirujuk, Python akan membuang NameError. Oleh itu, semak semula bahawa anda mengeja dengan betul apabila menggunakan pembolehubah.
- Pembolehubah tidak diberi nilai
Pembolehubah tidak diisytiharkan dan pembolehubah tidak diberikan nilai adalah dua konsep yang berbeza. Pembolehubah mungkin telah diisytiharkan tetapi tidak diberikan nilai sebelum digunakan, dalam hal ini NameError juga akan dilemparkan.
- Ralat skop pembolehubah
Dalam Python, skop pembolehubah dibahagikan kepada skop global dan skop tempatan. Jika anda menggunakan pembolehubah yang tidak diisytiharkan di dalam fungsi, Python mencipta pembolehubah tempatan baharu di dalam fungsi dan bukannya menggunakan pembolehubah global. Pada masa ini, jika pembolehubah ini digunakan di luar fungsi, NameError akan dilemparkan.
Biasanya terdapat beberapa cara untuk menyelesaikan ralat ini:
- Semak ejaan pembolehubah
Semak sama ada nama pembolehubah dieja dengan betul, terutamanya apabila menggunakan nama pembolehubah yang panjang.
- Pastikan pembolehubah diberi nilai
Sebelum menggunakan pembolehubah, pastikan ia diberikan nilai dengan betul. Jika pembolehubah digunakan di dalam fungsi, anda boleh mengelakkan situasi ini dengan menggunakan parameter fungsi atau mengisytiharkan pembolehubah tempatan di dalam fungsi.
- Sahkan skop pembolehubah
Jika anda menggunakan pembolehubah global di dalam fungsi, gunakan kata kunci "global" untuk mengisytiharkan pembolehubah. Jika anda menggunakan pembolehubah tempatan, anda perlu mengisytiharkan pembolehubah di dalam fungsi.
- Memulakan pembolehubah
Memulakan pembolehubah pada permulaan program, atau sebelum pembolehubah digunakan buat kali pertama, untuk memastikan ia mempunyai nilai lalai.
Sebagai kesimpulan, ralat pembolehubah tidak diisytiharkan adalah salah satu ralat biasa dalam Python, tetapi ia boleh diselesaikan dengan mudah dengan menyemak kod dengan teliti dan menggunakan skop pembolehubah yang betul.
Atas ialah kandungan terperinci Perwakilan yang tidak diisytiharkan: Bagaimana untuk menyelesaikan pembolehubah Python yang tidak diisytiharkan ralat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!