問一個關于python json的問題?
問題描述
想知道為什么這段代碼運行的結果不是想象中的’['123']’
In [1]: import jsonIn [2]: t = ’[]’In [3]: t = json.dumps(json.loads(t).append(’123’))In [4]: tOut[4]: ’null’
但是拆分以后又正常運行?
In [5]: t1 = ’[]’In [6]: t2 = json.loads(t1)In [7]: t2Out[7]: []In [8]: t2.append(’123’)In [9]: t2Out[9]: [’123’]In [10]: t1 = json.dumps(t2)In [11]: t1Out[11]: ’['123']’
甚至不引入多一個變量,拆分也是正常運行
In [12]: t1 = ’[]’In [13]: t1 = json.loads(t1)In [14]: t1Out[14]: []In [15]: t1.append(’123’)In [16]: t1Out[16]: [’123’]In [17]: t1 = json.dumps(t1)In [18]: t1Out[18]: ’['123']’
請指教
問題解答
回答1:因為 list.append 返回值是 None 而不是 列表自己
回答2:列表的append操作返回的是 None, 即 json.loads(t).append(’123’) 返回的是None。
拆開的操作不是 append的返回值,而就是這個列表對象。
相關文章:
1. 數組按鍵值封裝!2. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題3. java - 阿里的開發手冊中為什么禁用map來作為查詢的接受類?4. docker不顯示端口映射呢?5. javascript - webpack中alias配置中的“@”是什么意思?6. 主題切換問題,用過別人的webapp在后臺切換模板主題后手機端打開網頁就是切換到的主題了7. python - flask _sqlalchemy 能否用中文作為索引條件8. javascript - 為什么創建多行多列的表格最后只有一行內有表格9. javascript - ES6規范下 repeat 函數報錯 Invalid count value10. html5 - 使用echarts中的圖表 一個頁面導入了好幾個js圖表 實現echarts圖表隨著瀏覽器窗口變化而變化時出現了問題
