簡體   English   中英

在Python中顯示Unicode繪圖字符

[英]Displaying Unicode Drawing Characters in Python

我已經弄清楚了如何使用所需的字符,但是它在Linux控制台和Windows控制台中的工作方式不同。 我想弄清楚是否有一種方法可以解決此問題,我可以使其同時工作或至少檢查一下它在什么系統上運行並調用正確的代碼。

這是使用位於http://www.tutorialspoint.com/execute_python_online.php的編碼地面終端
它使用Fedora Release 21和Python v2.7.5。 這是我的初始代碼:

# Unicode Test
print u'\u2554'

這給了我這個錯誤:

Traceback (most recent call last):                                                                                                                                                                                      
  File "main.py", line 2, in <module>                                                                                                                                                                                   
    print u'\u2554'                                                                                                                                                                                                     
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2554' in position 0: ordinal not in range(128) 

在使用Python 2.7.9的Windows 7控制台上,此命令可以正確運行並顯示'╔'字符。 為了使其能夠在linux終端上正確運行,我必須使用

# Unicode Test
print u'\u2554'.encode('UTF-8')

不幸的是,該代碼無法在Windows控制台下正確運行。 如果我在Windows上使用print u'\╔'.encode('UTF-8')我得到b'\\xe2\\x95\\x94'

關於如何使它在兩個系統上運行而不必為每個控制台維護不同代碼的任何想法?

您需要在Linux中更改終端的默認編碼,在終端上單擊右鍵,然后從Terminal選擇Set Character Encoding然后選擇Unicode (UTF-8) 有關更多信息,請閱讀http://www.ianbicking.org/illusive-setdefaultencoding.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM