看板 Python 關於我們 聯絡資訊
初發文請多指教:p 最近開始想把Python學好當做平常會用的工具 當前想做的一件事:自動改程式作業+成績填到google docs上 安裝了GData到連線登入都沒問題 但是跑測試的sample列出文件時出了問題 查了一些資料 應該是中文以及檔名長度的問題 雖然try and error後解決了... 想請高手來解釋一下背後的原因 感激不盡 原本sample code: print '%-18s %-12s %s' % (truncate(entry.title.text.encode('UTF-8')), ... 錯誤訊息: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128) 修改後: print '%-40s %-12s\n %s\n' % \ (truncate(entry.title.text.encode('utf8').decode('utf8')) \ .encode('big5'), ... 就可以印出中文標題了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.208.68
bob123:心得? 改一下吧 truncate很明顯吃吐都unicode 11/09 02:42
bob123:另外你拿str去format unicode當然也會出錯 11/09 02:43
bob123:a = truncate(entry.title.text) 11/09 02:46
bob123:print '%-40s %-12s\n %s\n' % a.encode('big5') 或 11/09 02:46
bob123:print u'%-40s %-12s\n %s\n' % a,...... 11/09 02:48
※ 編輯: terry0201 來自: 140.113.208.68 (11/12 16:23)