[問題] 請問utf-8的問題

看板Python作者 (蝦米丁)時間3年前 (2022/06/27 01:13), 3年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
對於python 完全是初心者。 目前使用的環境是vs2022+python 3.9 64-bit 因為已經習慣vs的開發介面,所以就....使用它來學習python 程式碼如下: # -*- coding: big5 -*- import sys print(sys.getdefaultencoding()) s1=input("請輸入一個中文:") print ("你輸入的中文為:"+s1) 很神奇的是第2行仍是秀出utf-8 但在這種設定下,中文是沒有問題的。 如果將程式碼改為 # -*- coding: utf-8 -*- import sys print(sys.getdefaultencoding()) s1=input(u"請輸入一個中文:") print (u"你輸入的中文為:"+s1) 無論有沒有把u拿掉,都會錯在第4行。 SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xbd in position 0: invalid start byte 如果把中文都改為英數的話,即正常。 爬文的結果,似乎在3以後的版本應該不會有這種中文問題。 但偏偏又讓我這個大初心給遇上了。 請問如何在utf-8的編碼下,讓中文字正常呢? 啊,自問自答 在看到這篇文章後,心中的疑問就獲得解答了。 https://openhome.cc/Gossip/CodeData/PythonTutorial/UnicodeBasicIOPy3.html 在存檔時就要選則存檔的編碼為utf-8 這樣中文就正常了。 否則vs2022存檔的編碼是big5 所以在撰寫程式時,第1行要跟直譯器說,這是big5 否則中文就會出錯 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.83.151 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1656263607.A.60E.html ※ 編輯: earny (220.133.83.151 臺灣), 06/27/2022 01:15:33 ※ 編輯: earny (220.133.83.151 臺灣), 06/27/2022 01:24:06
文章代碼(AID): #1Yk9EtOE (Python)
文章代碼(AID): #1Yk9EtOE (Python)