2013-05-20 5 views
5

Tôi muốn có thể sử dụng unicode trong chuỗi python của mình. Ví dụ: tôi có biểu tượng:Cách sử dụng các ký tự Unicode trong một chuỗi python

icon = '▲' 
print icon 

nên tạo biểu tượng = '& # x25B2;'

nhưng thay vào đó nó theo nghĩa đen trả về nó ở dạng chuỗi: ▲

Làm thế nào tôi có thể làm cho chuỗi này nhận unicode?

Cảm ơn sự giúp đỡ của bạn trước.

+0

Bạn shoudl điều chỉnh các tiêu đề của câu hỏi của bạn. Câu hỏi không liên quan gì đến utf-8 cả. – Achim

Trả lời

9

Bạn có thể sử dụng trình tự chuỗi escape, như tài liệu trong số the “string and bytes literals” section của tham chiếu ngôn ngữ. Đối với Python 3, thao tác này sẽ hoạt động đơn giản như sau:

>>> icon = '\u25b2' 
>>> print(icon) 
▲ 

Trong Python 2 chỉ hoạt động trong chuỗi unicode. chuỗi Unicode có một tiền tố u trước dấu ngoặc kép:

>>> icon = u'\u25b2' 
>>> print icon 
▲ 

Đây không phải là cần thiết trong Python 3 như tất cả các chuỗi bằng Python 3 là chuỗi unicode.

2

Sử dụng \u thoát trong một chuỗi unicode đen:

>>> print u"\u25B2".encode("utf-8") 
▲ 

Ngoài ra, nếu bạn muốn sử dụng các đối tượng HTML, bạn có thể sử dụng câu trả lời này: https://stackoverflow.com/a/2087433/71522

3
>>> print u'\N{BLACK UP-POINTING TRIANGLE}' 
▲