de-vraag
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
 SujitS
SujitS
Question

UnicodeDecodeError: 'utf-8' codec dapat't decode byte

Berikut ini adalah kode saya,

for line in open('u.item'):
#read each line

setiap kali saya menjalankan kode ini memberikan error berikut:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 2892: invalid continuation byte

Saya mencoba untuk memecahkan masalah ini dan menambahkan parameter tambahan di buka(), kode terlihat seperti;

for line in open('u.item', encoding='utf-8'):
#read each line

Tapi sekali lagi ini memberikan kesalahan yang sama. apa yang harus saya lakukan! Mohon bantuan....

178 2013-10-31T05:55:32+00:00 8
 desertnaut
desertnaut
Pertanyaan edit 3 Juli 2019 в 10:02
Pemrograman
character-encoding
python
python-3.x
Solution / Answer
 SujitS
SujitS
31 Oktober 2013 в 12:35
2013-10-31T12:35:45+00:00
Lebih
Sumber
Sunting
#22674027

Seperti yang disarankan oleh Mark Tebusan, saya menemukan pengkodean untuk masalah itu. Encoding adalah "ISO-8859-1", sehingga menggantikan terbuka("u.item", encoding="utf-8") dengan terbuka('u.item', encoding = "ISO-8859-1") akan memecahkan masalah.

 aryeh
aryeh
Jawaban edit 7 Oktober 2015 в 3:19
354
0
Ryoji  Kuwae Neto
Ryoji Kuwae Neto
26 Oktober 2017 в 7:49
2017-10-26T19:49:14+00:00
Lebih
Sumber
Sunting
#22674031

Juga bekerja untuk saya, ISO 8859-1 akan menghemat banyak, hahaha, terutama jika menggunakan Speech Recognition API's

Contoh:

file = open('../Resources/' + filename, 'r', encoding="ISO-8859-1");
44
0
Mark Ransom
Mark Ransom
31 Oktober 2013 в 5:58
2013-10-31T05:58:23+00:00
Lebih
Sumber
Sunting
#22674026

File anda doesn't benar-benar mengandung utf-8 encoded data, berisi beberapa pengkodean lain. Mencari tahu apa yang encoding dan menggunakannya dalam open call.

Di Windows-1252 encoding misalnya 0xe9 akan menjadi karakter é.

29
0
 Shashank
Shashank
31 Januari 2017 в 8:35
2017-01-31T20:35:31+00:00
Lebih
Sumber
Sunting
#22674029

Coba ini untuk membaca menggunakan panda

pd.read_csv('u.item', sep='|', names=m_cols , encoding='latin-1')
21
0
 Jeril
Jeril
3 Maret 2017 в 5:32
2017-03-03T17:32:48+00:00
Lebih
Sumber
Sunting
#22674030

Jika anda menggunakan Python 2 berikut akan solusi:

import io
for line in io.open("u.item", encoding="ISO-8859-1"):
    # do something

Karena encoding parameter doesn't bekerja dengan open(), anda akan mendapatkan error berikut:

TypeError: 'encoding' adalah sebuah kata kunci tidak valid argumen untuk fungsi ini
11
0
Ozcar Nguyen
Ozcar Nguyen
2 Mei 2019 в 2:15
2019-05-02T02:15:15+00:00
Lebih
Sumber
Sunting
#22674033

Anda bisa menyelesaikan masalah dengan: untuk baris di buka(your_file_path, 'rb'): 'rb' membaca file dalam mode biner. Baca lebih lanjut di sini. Berharap ini akan membantu!

6
0
 user6832484
user6832484
14 September 2016 в 7:24
2016-09-14T19:24:43+00:00
Lebih
Sumber
Sunting
#22674028

Jika seseorang mencari untuk ini, ini adalah contoh untuk mengkonversi CSV file di Python 3:

try:
    inputReader = csv.reader(open(argv[1], encoding='ISO-8859-1'), delimiter=',',quotechar='"')
except IOError:
    pass
 user812786
user812786
Jawaban edit 14 September 2016 в 8:51
2
0
 xtluo
xtluo
29 Agustus 2018 в 3:58
2018-08-29T03:58:51+00:00
Lebih
Sumber
Sunting
#22674032

Kadang-kadang ketika terbuka(filepath) di mana filepath sebenarnya bukan file yang akan mendapatkan kesalahan yang sama, jadi pertama-tama pastikan file anda'kembali mencoba untuk membuka ada:

import os
assert os.path.isfile(filepath)

berharap ini akan membantu.

2
0
Related communities 6
Python Indonesia
Python Indonesia
24 686 pengguna
Programmer Python Indonesia. Group ini dikelola oleh sejumlah admin. Baca pesan tersemat / pinned message: https://t.me/pythonID/217588
Buka telegram
Indonesian Python Warriors
Indonesian Python Warriors
1 462 pengguna
Di grup ini tidak ada kewajiban untuk menggunakan username dan foto. Yang tidak boleh adalah spamming. Gak boleh baper, kalau nanya yang bener, eror jangan difoto pake HP, gunakan screenshot, code copas ke pastebin.com lalu share link ke sini.
Buka telegram
Python-ID Jogja
Python-ID Jogja
962 pengguna
Buka telegram
BASIC PYTHON INDONESIA
BASIC PYTHON INDONESIA
214 pengguna
Buka telegram
Python Newbie Indonesia
Python Newbie Indonesia
180 pengguna
Peraturan grup Python Newbie 🌻Dilarang spam 🌻Dilarang menggunakan bahasa kasar 🌻Dilarang beriklan di grup tanpa seizin admin Beberapa video dasar python dapat diliat melalui channel youtube juan aditya Jangan lupa untuk subscribe ya🙏
Buka telegram
PythonWealth Indonesia 🇮🇩
PythonWealth Indonesia 🇮🇩
29 pengguna
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
Asilbek Qadamboyev
Terdaftar 6 jam yang lalu
2
Akshit Mehta
Terdaftar 2 hari yang lalu
3
me you
Terdaftar 5 hari yang lalu
4
Никита иванов
Terdaftar 1 minggu yang lalu
5
Alex1976G_06
Terdaftar 1 minggu yang lalu
DE
EL
ES
FR
ID
IT
JA
KO
NL
PT
SL
TR
ZH
© de-vraag 2022
Sumber
stackoverflow.com
di bawah lisensi cc by-sa 3.0 dengan atribusi