摘要:我是接口調用方,今天在聯調的時候,接口方的同學問我傳過來的是神馬玩意,怎么每個前還帶個的。一通發現是自帶的庫會把文件成對象。如果想要變成對象的話,就要自己去。使用里的來代替官方自帶的可能更好。
我是接口調用方,今天在聯調的時候,接口方的同學問我傳過來的json是神馬玩意,怎么每個item前還帶個u的。
我看了一眼,我靠,還真是帶個u的,自己調試的時候楞是沒發現。也怪自己以前沒怎么遇到過Python的編碼坑,這次重新用起Python2來,一不小心就踩進坑了。
一通debug發現是Python自帶的Json庫會把json文件load成Unicode對象。如果想要變成str對象的話,就要自己去encode。
祭出so大法...#請叫我so搬運工
def byteify(input): if isinstance(input, dict): return {byteify(key):byteify(value) for key,value in input.iteritems()} elif isinstance(input, list): return [byteify(element) for element in input] elif isinstance(input, unicode): return input.encode("utf-8") else: return input
這個函數遞歸的把list和dict里的Unicode對象encode成str。
當然,我不覺得這是the right way。使用yaml里的json來代替官方自帶的json可能更好。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/37540.html
摘要:值得注意的是,有的編碼方案不一定能表示某些信息,這時編碼就會失敗,比如就不能用來表示中文。數組的每一項是一個字節,用來表示。所以對于字符串來說,其長度等于編碼后字節的長度。所以,讓來編碼解碼中文,就超出了其能力范圍。 在人機交互之字符編碼 一文中對字符編碼進行了詳細的討論,并通過一些簡單的小程序驗證了我們對于字符編碼的認識。但僅了解這篇文章的內容,并不能幫我們在日常編程中躲過一些字符編...
摘要:常見的字符編碼有編碼,編碼,編碼等。碼只規定了個字符的編碼,這在美國是夠用的。小結是一種針對的可變長度字符編碼,它是的實現方式之一。 字符編碼是計算機編程中不可回避的問題,不管你用 Python2 還是 Python3,亦或是 C++, Java 等,我都覺得非常有必要厘清計算機中的字符編碼概念。本文主要分以下幾個部分介紹: 基本概念 常見字符編碼簡介 Python 的默認編碼 Py...
摘要:如果傳一個中文,下和下編碼分別是和,可以自己用打印看看文件中寫死,本來理解是跟這個文件本身編碼有關,但文件編碼同樣是的情況下,下打印了的超集,下仍然是。 對編碼問題一直一知半解,之前也是得過且過,正好有個同事要我幫忙寫個腳本,涉及這方面的問題,借這個契機研究了一下. 先貼幾篇比較好的: 1.阮老師的上古文章(07年…),雖然古老但對理解幫助很大,從最基礎講起,邏輯清晰易理解. (ps:...
摘要:根據有效范圍作用域分為全局變量和局部變量。類型以開頭標識類型以開頭標識類型以進制的字節碼表示,實際上是一個字節串,回應了它的另一個名字。 < 返回索引頁 基本語法 Hello World 代碼注釋 關鍵字 數據類型 變量、常量 變量 變量賦值 變量命名 變量的作用域 常量 字符串與編碼 字符轉義 字符編碼 字符串操作 運算符與表達式 運算符 表達式 ...
摘要:的字符串有兩種和,的字符串也有兩種和。不同字符的不同表現,讓的和顯得撲朔迷離。在中,嚴格區分了和,不同類型之間操作就會拋出的異常。和之間的轉換一圖勝千言和的相互轉換指的是具體的編碼規則的名稱,對于中文來說,它可以是這些值等等。 Python2的字符串有兩種:str 和 unicode,Python3的字符串也有兩種:str 和 bytes。Python2 的 str 相當于 Pytho...
閱讀 4006·2023-04-26 02:13
閱讀 2249·2021-11-08 13:13
閱讀 2737·2021-10-11 10:59
閱讀 1737·2021-09-03 00:23
閱讀 1307·2019-08-30 15:53
閱讀 2285·2019-08-28 18:22
閱讀 3056·2019-08-26 10:45
閱讀 735·2019-08-23 17:58