Re: [問題] 新手請教:如何印出字碼?

看板Python作者 (阿真)時間15年前 (2009/10/29 14:57), 編輯推噓0(005)
留言5則, 2人參與, 最新討論串4/4 (看更多)
雖然code編碼是個月經文 但我還是沒有實際了解過 例如這個討論串在我的(python 2.5.4) 下 出現這個結果 http://imgur.com/MJhKL.gif
是不是編譯器 "聰明地" 幫我做了一些編碼的變換 造成我對 "已編碼的東西再編一次碼" 變成怪怪的結果 有人可以提供一下觀念或相關網址嗎??(方便的話) ※ 引述《sbrhsieh (偶爾想擺爛一下)》之銘言: : ※ 引述《coscell (顧人怨)》之銘言: : : #coding=big5 : : a=u'大家好' : : for i in a: : : print hex(ord(unicode(i))), : : 可以順利印出 0x5927 0x5bb6 0x597d : : 如果把 a 改由使用者輸入: : : a=raw_input('請輸入文字: ') : : 輸入 大家好 會產生錯誤: : : Traceback (most recent call last): : : File "a", line 4, in <module> : : print hex(ord(unicode(i))), : : UnicodeDecodeError: 'ascii' codec can't decode byte 0xa4 in position 0: ordinal : : not in range(128) : : 請問要如何修改?感謝指點! : a=raw_input('請輸入文字: ') : a=a.decode('cp950') #依照你的 console 使用的字頁碼 : for x in a: : print hex(ord(x)) 這邊為什麼 a沒有先執行呢? 會等到decode完才執行??還是我哪裡看錯了@_@a? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.63.180

10/29 17:27, , 1F
感覺你似乎誤會 raw_input 的作用。
10/29 17:27, 1F

10/29 17:36, , 2F
請你把程式碼一行一行打(或貼上),不要一次貼上多行
10/29 17:36, 2F

10/29 17:36, , 3F
3執行 raw_input function 會等待你輸入一些文字
10/29 17:36, 3F

10/29 17:37, , 4F
以本篇的目的來說,你的輸入要包含一些中文字
10/29 17:37, 4F

10/29 18:07, , 5F
了解~ 感謝
10/29 18:07, 5F
文章代碼(AID): #1AwJpqJM (Python)
文章代碼(AID): #1AwJpqJM (Python)