2010-04-20 27 views

Trả lời

52

Các lãnh đạo \x dãy thoát nghĩa là hai ký tự tiếp theo được hiểu là chữ số hex cho mã ký tự, vì vậy \xaa bằng chr(0xaa), nghĩa là, chr(16 * 10 + 10) - một nhỏ lớn lên thường 'a' nhân vật.

Chuỗi thoát được ghi lại trong một bảng ngắn here trong tài liệu Python.

+0

chr (170) có thể được giải thích mà không tham chiếu đến một mã hóa cụ thể chỉ trong ngữ cảnh của Python 3.X, và nó thực sự là một "chỉ số thứ tự nữ tính" ... một đặc thù của chính tả Tây Ban Nha, cùng với anh chị em U + 00BA của nó " chỉ số thứ tự nam tính ". –

+0

@John: trong IronPython, như trong Python 3, ''\ xaa'' là một chuỗi Unicode. Bạn đã không thấy thẻ "IronPython" trên câu hỏi chưa? (btw, tôi phẫn nộ khẳng định của bạn rằng, ví dụ, '2ª' cho "thứ hai [[nữ tính]]" là "đặc thù của chính tả Tây Ban Nha" - ý tôi là, tiếng Ý, ngôn ngữ mẹ đẻ của tôi, gan xắt nhỏ ?!). –

+0

bạn sẽ làm gì nếu bạn muốn có nhiều hơn 2 chữ số hex – Hippolippo

-4

Đó là ký tự unicode thoát. Xem "Unicode Constructors" trên PEP 100

+2

Không. Nó để xác định một byte cụ thể trong một 'str', không phải để tạo một điểm mã unicode, được thực hiện với ký hiệu' u '\ u ... '. –

+0

@Mike, @Jake: Nó dành cho cả hai. '\ xaa' là một đối tượng str. u '\ xaa' là một đối tượng unicode. 'print repr (unichr (170))' tạo 'u '\ xaa'' –

+0

Rất tiếc. Đọc nhầm. Cảm ơn cho những người đứng đầu lên. –

Các vấn đề liên quan