Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Membetulkan 'SyntaxError: aksara Bukan ASCII...' Ralat dalam Kod Python Saya?

Bagaimanakah Saya Boleh Membetulkan 'SyntaxError: aksara Bukan ASCII...' Ralat dalam Kod Python Saya?

DDD
DDDasal
2024-12-29 02:49:09868semak imbas

How Can I Fix

Berurusan dengan Aksara Bukan ASCII dalam Skrip Python: Menyelesaikan "Watak Bukan ASCII..." Ralat Sintaks

Dalam Python 2 dan Python 3, cuba menggunakan aksara bukan ASCII dalam literal rentetan boleh mengakibatkan "SyntaxError: Aksara bukan ASCII..." atau "SyntaxError: Non-UTF-8 code...". Isu ini timbul kerana pengekodan lalai Python mungkin tidak menyokong aksara bukan ASCII yang dimaksudkan, terutamanya jika fail kod anda disimpan dalam pengekodan aksara yang tidak serasi.

Sebagai contoh, pertimbangkan kod Python 2 berikut:

def NewFunction():
    return '£'

Setelah menjalankan kod ini, anda mungkin menghadapi ralat seperti:

SyntaxError: Non-ASCII character '\xa3' in file '...' but no encoding declared;
see http://www.python.org/peps/pep-0263.html for details

Ralat ini menunjukkan bahawa £ simbol, yang diwakili oleh 'xa3' dalam binari, tidak dikenali oleh pengekodan semasa skrip. Untuk menyelesaikan isu ini, anda disyorkan untuk menggunakan pengekodan yang menyokong aksara bukan ASCII yang dikehendaki. UTF-8 ialah pengekodan yang diterima pakai secara meluas yang memuatkan pelbagai jenis aksara daripada bahasa dan skrip yang berbeza.

Salah satu cara untuk mendayakan pengekodan UTF-8 dalam Python ialah dengan menambahkan perisytiharan pengekodan pada permulaan skrip fail:

# -*- coding: utf-8 -*-

def NewFunction():
    return '£'

Dengan adanya pengisytiharan ini, Python akan mentafsir kod menggunakan pengekodan UTF-8, membenarkan Simbol £ untuk digunakan tanpa menghadapi ralat sintaks. Walau bagaimanapun, jika anda ingin menyokong beberapa set aksara atau pengekodan dalam satu fail, anda boleh menentukan pengekodan berdasarkan rentetan demi rentetan dalam kod itu sendiri.

Dengan menangani masalah aksara bukan ASCII melalui pengekodan yang betul teknik, anda boleh memastikan bahawa skrip Python anda boleh mengendalikan teks antarabangsa dan aksara khas dengan cekap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan 'SyntaxError: aksara Bukan ASCII...' Ralat dalam Kod Python Saya?. 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