2016-04-05 101 views
0

你好我正在做一個簡單的Curses UI應用程序我有一切工作。我想在我的進度條打印此█但是當我做我得到這個錯誤Python詛咒UI印刷Unicode

File "simple.py", line 100, in <module>                  │ 
│   main()                │ 
│   File "simple.py", line 55, in main       │ 
│   show_progress()  │ 
│   File "simple.py", line 83, in show_progress           │ 
│   win.addstr(1,pos,u"\u2588")   │ 
│UnicodeEncodeError: 'ascii' codec can't encode character u'\u2588' in position 0: ordinal not in range(128)  

我知道這是一個可怕的錯誤,但它是它是如何打印出

這裏是代碼被打印出來

win.addstr(1,pos,u"\u2588") 
+0

您使用的是什麼版本的Python? – snakecharmerb

+0

我使用2.7.10 – 112madgamer

回答

1

的Python 2不明白Unicode的 - 這隻能理解字節...

所以端口Python3(易除非你正在做網絡編程),或開始做

bytes(unicode_string.encode('utf-8')) 

無處不在您的代碼中。

+0

謝謝你這個工作,我用2to3轉換代碼,它運行完美 – 112madgamer