Bạn cần phải khám phá, trong đó mã hóa là nhân vật này tại nguồn.
Tôi đoán đây là ISO-8859-1 (ngôn ngữ châu Âu), trong trường hợp đó là "ä", nhưng bạn nên kiểm tra. Nó cũng có thể là cyrillic hoặc greek.
Xem http://en.wikipedia.org/wiki/ISO/IEC_8859-1 cho một danh sách đầy đủ của các nhân vật trong mã hóa này.
Sử dụng thông tin này, bạn có thể yêu cầu Python để chuyển đổi nó:
Trong Python 2,7
>>> s = '\xe4'
>>> t = s.decode('iso-8859-1')
>>> print t
ä
>>> for c in t:
... print ord(c)
...
228
>>> u = t.encode('utf-8')
>>> print u
ä
>>> for c in bytes(u):
... print ord(c)
...
195
164
Chuỗi t
được mã hóa trong nội bộ tiêu chuẩn ISO-8859-1 trong Python. Chuỗi u
được nội UTF-8, và nhân vật mà mất 2 byte trong UTF-8. Chú cũng là hướng dẫn print
"biết" làm thế nào để hiển thị các mã hóa khác nhau.
Nguồn
2014-10-28 10:21:27
'u '\ xe4'.encode (' ascii ',' ignore ')' hoạt động tốt cho tôi. Chúng ta cần thêm bối cảnh để xem vấn đề thực sự là gì. –
# 2 cũng "hoạt động" ở chỗ nó tạo ra kết quả lỗi w/o; không thể nói nếu đó là kết quả mong muốn. –