Saya menulis beberapa kode python dan saya menerima pesan kesalahan seperti pada judul, dari pencarian ini ada hubungannya dengan set karakter.
Inilah baris yang menyebabkan kesalahan
hc = HealthCheck("instance_health", interval=15, target808="HTTP:8080/index.html")
Saya tidak tahu karakter apa yang tidak ada dalam set ANSI ASCII? Selanjutnya mencari "\ xe2" tidak memberikan informasi lagi mengenai karakter apa yang muncul. Karakter mana di baris itu yang menyebabkan masalah?
Saya juga melihat beberapa perbaikan untuk masalah ini, tetapi saya tidak yakin mana yang harus digunakan. Bisakah seseorang mengklarifikasi apa masalahnya (python tidak menafsirkan unicode kecuali disuruh melakukannya?), Dan bagaimana saya akan menjernihkannya dengan benar?
EDIT: Berikut adalah semua baris di dekat salah satu yang salah
def createLoadBalancer():
conn = ELBConnection(creds.awsAccessKey, creds.awsSecretKey)
hc = HealthCheck("instance_health", interval=15, target808="HTTP:8080/index.html")
lb = conn.create_load_balancer('my_lb', ['us-east-1a', 'us-east-1b'],[(80, 8080, 'http'), (443, 8443, 'tcp')])
lb.configure_health_check(hc)
return lb
–
-\xe2\x80\x93
)Jawaban:
Anda punya byte liar yang melayang-layang. Anda dapat menemukannya dengan menjalankan
di mana Anda harus mengganti
"x.py"
dengan nama program Anda. Anda akan melihat nomor baris dan baris yang menyinggung. Misalnya, setelah memasukkan byte itu secara sewenang-wenang, saya mendapat:sumber
O'Donnell
Jika Anda hanya mencoba menggunakan karakter UTF-8 atau tidak peduli apakah mereka ada dalam kode Anda, tambahkan baris ini ke bagian atas
.py
file Andasumber
Atau Anda cukup menggunakan:
di atas file .py
sumber
\ xe2 adalah karakter '-', muncul di beberapa salin dan tempel menggunakan 'sama - sama tampak' - 'yang menyebabkan kesalahan pengkodean. Ganti '-' (dari copy paste) dengan benar '-' (dari tombol keyboard Anda).
sumber
Ubah pengkodean karakter file,
letakkan di bawah baris ke atas kode Anda selalu
sumber
Saya memiliki kesalahan yang sama saat menyalin dan menempel komentar dari web
Bagi saya itu adalah kutipan tunggal (') dalam kata tersebut
Saya baru saja menghapusnya dan mengetik ulang.
sumber
Menambahkan # coding = utf-8 baris di baris pertama file .py Anda akan memperbaiki masalah.
Silakan baca lebih lanjut tentang masalah dan perbaikannya di tautan di bawah ini, dalam artikel ini masalah dan solusinya dijelaskan dengan indah: https://www.python.org/dev/peps/pep-0263/
sumber
Saya mendapatkan kesalahan ini untuk karakter dalam komentar saya (dari menyalin / menempelkan konten dari web ke editor saya untuk keperluan pencatatan).
Untuk mengatasi di Text Wrangler:
sumber
Berdasarkan PEP 0263 - Menentukan Penyandi Kode Sumber Python
sumber
Saya memiliki masalah yang sama dan hanya menambahkan ini ke bagian atas file saya (dengan Python 3 saya tidak memiliki masalah tetapi lakukan di Python 2
sumber
Setelah sekitar setengah jam melihat melalui stack overflow, Saya sadar bahwa jika penggunaan satu kutipan "" dalam komentar akan melalui kesalahan:
Setelah melihat traceback saya dapat menemukan kutipan tunggal yang digunakan dalam komentar saya.
sumber
Jika itu membantu siapa pun, bagi saya itu terjadi karena saya mencoba menjalankan implementasi Django di python 3.4 dengan perintah python 2.7 saya
sumber
Saya mengalami masalah ini dengan menjalankan kode .py sederhana di bawah ini:
Kode DSM di atas memberikan yang berikut:
1 'cetak \ xe2 \ x80 \ x98 versi adalah \ xe2 \ x80 \ x99, sys.version'
Jadi masalahnya adalah editor teks saya menggunakan SMART QUOTES, seperti yang disarankan John Y. Setelah mengubah pengaturan editor teks dan membuka kembali / menyimpan file, itu berfungsi dengan baik.
sumber
Saya mencoba mengurai jendela aneh itu dan setelah mencoba beberapa hal di sini adalah potongan kode yang berfungsi.
sumber
Saya memiliki masalah yang sama tetapi itu karena saya menyalin dan menempelkan string seperti itu. Kemudian ketika saya mengetik string secara manual karena kesalahannya hilang.
Saya memiliki kesalahan karena
-
tandanya. Ketika saya menggantinya dengan memasukkan-
kesalahan secara manual diselesaikan.String yang disalin
10 + 3 * 5/(16 − 4)
String yang diketik secara manual
10 + 3 * 5/(16 - 4)
Anda dapat dengan jelas melihat ada sedikit perbedaan antara kedua tanda hubung .
Saya pikir itu karena format yang berbeda yang digunakan oleh OS yang berbeda atau mungkin hanya perangkat lunak yang berbeda.
sumber
Bagi saya masalah telah disebabkan karena simbol "" dalam kutipan. Karena saya telah menyalin kode dari file pdf itu menyebabkan kesalahan itu. Saya baru saja mengganti "'" dengan ini "'".
sumber
Jika Anda ingin mengetahui karakter apa yang menyebabkan ini, tetapkan saja variabel yang bermasalah ke sebuah string dan cetaklah di konsol iPython.
Dalam kasus saya
sumber
bagi saya, masalah itu disebabkan oleh mengetik kode saya ke Catatan Mac dan kemudian menyalinnya dari Catatan Mac dan disisipkan ke sesi vim saya untuk membuat file saya. Ini membuat single saya mengutip tipe melengkung. untuk memperbaikinya saya membuka file saya di vim dan mengganti semua tanda kutip tunggal saya dengan jenis lurus, hanya dengan menghapus dan mengetik ulang karakter yang sama. Itu Catatan Mac yang membuat stroke kunci yang sama menghasilkan kutipan tunggal melengkung.
sumber
Saya tidak dapat menemukan apa masalahnya untuk waktu yang lama tetapi kemudian saya menyadari bahwa saya telah menyalin garis "UTC-12: 00" dari web dan tanda hubung / tanda hubung dalam hal ini yang menyebabkan masalah. Saya hanya menulis ini "-" lagi dan masalahnya teratasi.
Jadi, terkadang salin baris yang disisipkan juga memberikan kesalahan. Dalam kasus seperti itu, cukup tulis ulang kode yang disalin dan berhasil. Saat menulis ulang, sepertinya tidak ada yang berubah tetapi kesalahan akan hilang.
sumber
Ketika saya memiliki masalah serupa saat membaca file teks yang saya gunakan ...
sumber