Bagaimana Mengendalikan UnicodeDecodeError Apabila Membuka Fail dalam Python?

Mary-Kate Olsen
Lepaskan: 2024-11-03 13:30:02
asal
428 orang telah melayarinya

How to Handle a UnicodeDecodeError When Opening a File in Python?

UnicodeDecodeError: Mengendalikan Urutan Byte Tidak Sah dalam Pengendalian Fail

Apabila menghadapi ralat "UnicodeDecodeError: codec 'utf-8' tidak boleh menyahkod byte" semasa menggunakan baris for dalam binaan open(...), ia menunjukkan isu dengan pengekodan fail.

Dalam coretan kod yang diberikan, cuba membuka fail dengan pengekodan utf-8 menggunakan open( 'u.item', encoding='utf-8') tidak menyelesaikan isu tersebut. Ini kerana fail mungkin menggunakan pengekodan yang berbeza daripada utf-8.

Untuk menentukan pengekodan yang betul, anda boleh cuba menggunakan perpustakaan chardet untuk menganalisis fail dan mengenal pasti pengekodannya. Sebagai alternatif, anda boleh merujuk kepada dokumentasi atau metadata fail untuk mencari maklumat tentang pengekodan yang digunakan.

Setelah anda menentukan pengekodan yang betul, anda boleh menentukannya dalam fungsi open() seperti berikut:

<code class="python">for line in open('u.item', encoding="encoding_name"):
    # Read each line</code>
Salin selepas log masuk

Dalam penyelesaian yang disediakan, fail didapati dikodkan dalam "ISO-8859-1", jadi kod yang betul ialah:

<code class="python">for line in open('u.item', encoding="ISO-8859-1"):
    # Read each line</code>
Salin selepas log masuk

Dengan menyatakan pengekodan yang betul, anda akan dapat menyahkod kandungan fail dengan betul dan mengelakkan UnicodeDecodeError.

Atas ialah kandungan terperinci Bagaimana Mengendalikan UnicodeDecodeError Apabila Membuka Fail dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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!