Tôi đang sử dụng Python 2.7.9. x32 trên Win7 x64.UnicodeDecodeError khi đăng nhập ngoại lệ bằng Python
Khi tôi đăng nhập một ngoại lệ chứa umlauts, tôi luôn nhận được
UnicodeDecodeError: 'ascii' codec can't decode byte 0xfc in position 39: ordinal not in range(128)
mã ví dụ của tôi là:
except Exception as e:
logging.error('Error loading SCMTool for repository '
'%s (ID %d): %s' % (repo.name, repo.id, e),
exc_info=1)
Các ngoại lệ được đăng nhập là WindowsError: [Error 267] Der Verzeichnisname ist ungültig
. Sự cố được dựa trên "ung Ü ltig" umlaut.
Sau khi xóa %s
cuối cùng và e
, nó hoạt động mà không có sự cố.
Điều này xảy ra mỗi lần ngoại lệ được ghi lại, do đó việc thay đổi mọi trình ghi nhật ký không thay thế.
Có ai có ý tưởng làm cách nào để ngoại lệ trả về chuỗi unicode trên toàn cầu không?
Đây không phải là thực sự mã của tôi, tôi đang sử dụng ReviewBoard trong đó có rất nhiều tập tin với nhiều loggings ngoại lệ. Không còn cách nào khác? Nơi tôi không phải chạm vào tất cả các tệp. – Seega
Có lẽ bạn nên gửi một lỗi với dự án Xem lại rồi? –
Không còn cách nào khác "trung tâm", đây là lỗi về cách xử lý các ngoại lệ. –