A. python怎么读取json文件内容
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
JSON在python中分别由list和dict组成。
这是用于序列化的两个模块:
json: 用于字符串和python数据类型间进行转换
pickle: 用于python特有的类型和python的数据类型间进行转换
Json模块提供了四个功能:mps、mp、loads、load
pickle模块提供了四个功能:mps、mp、loads、load
json mps把数据类型转换成字符串 mp把数据类型转换成字符串并存储在文件中 loads把字符串转换成数据类型 load把文件打开从字符串转换成数据类型
json是可以在不同语言之间交换数据的,而pickle只在python之间使用。json只能序列化最基本的数据类型,josn只能把常用的数据类型序列化(列表、字典、列表、字符串、数字、),比如日期格式、类对象!josn就不行了。而pickle可以序列化所有的数据类型,包括类,函数都可以序列化。
事例:
mps:将python中的 字典 转换为 字符串
B. python json快速解析命令
json.mps 用于将 Python 对象编码成 JSON 字符串。
json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。
demjson.encode() 函数用于将 Python 对象编码成 JSON 字符串。
demjson.decode() 函数解码 JSON 数据。该函数返回 Python 字段的数据类型。
1、以下实例将数组编码为 JSON 格式数据:
#!/usr/bin/python
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json = json.mps(data)
print json
2、以下实例展示了Python 如何解码 JSON 对象:
#!/usr/bin/python
import json
jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
text = json.loads(jsonData)
print text
C. 求助,python 解析爬取的网页源码中的json部分
我用re把json的部分截取出来了,也用json.loads()解析成了字典,现在的问题是里面需要的信息那部分是有一些是unicode 编码的,求解。。。。
{"pageName":"mainsrp","mods":{"shopcombotip":{"status":"hide","export":false},"shopstar":{"status":"hide","export":false},"navtablink":{"status":"hide","export":false},"personalbar":{"status":"show","data":{"metisData":{"nickname":"","query":"秋季打底衫","shopItems":[{"text":"黄钻爱买店铺","count":"500+","url":"/search?q\u003d秋季打底衫\u0026tab\u003dmysearch\u0026filter_rectype\u003d44\u0026stats_click\u003dms_from:44","trace":"metis44"},{"text":"回头客爱买店铺","count":"500+","url":"/search?q\u003d秋季打底衫\u0026tab\u003dmysearch\
D. python中如何遍历json数组
1、创建python文件,testjson.py;
E. python镐庝箞璇诲彇json鏂囦欢鍐呭
Python璇诲彇JSON鏂囦欢鍐呭圭殑姝ラゅ备笅锛
1. 浣跨敤鍐呯疆镄刞json`妯″潡涓镄刞load`鎴朻loads`鍑芥暟𨱒ヨ诲彇JSON鏂囦欢鍐呭广傝繖涓や釜鍑芥暟镄勪富瑕佸尯鍒鍦ㄤ簬璇诲彇镄勬暟鎹镙煎纺涓嶅悓锛宍load`鐢ㄤ簬璇诲彇鏂囦欢瀵硅薄锛岃宍loads`鐢ㄤ簬璇诲彇瀛楃︿覆銆备互涓嬫槸鍏蜂綋鏂规硶锛
浣跨敤`json.load`璇诲彇JSON鏂囦欢鍐呭
* 镓揿紑鏂囦欢锛氢娇鐢≒ython鍐呯疆镄刞open`鍑芥暟镓揿紑JSON鏂囦欢銆
* 璇诲彇鏂囦欢锛氢娇鐢╜json.load`鍑芥暟璇诲彇鏂囦欢鍐呭癸纴骞跺皢鍏惰浆鎹涓篜ython瀵硅薄銆
* 鍏抽棴鏂囦欢锛氢娇鐢╜close`鏂规硶鍏抽棴鏂囦欢銆
浣跨敤`json.loads`璇诲彇JSON瀛楃︿覆鍐呭
* 鐩存帴灏呙SON镙煎纺镄勫瓧绗︿覆浣滀负鍙傛暟浼犻掔粰`json.loads`鍑芥暟杩涜岃В鏋愶纴骞跺皢瑙f瀽缁撴灉杩斿洖涓篜ython瀵硅薄銆傛棤闇杩涜屾枃浠剁殑镓揿紑鍜屽叧闂镎崭綔銆
涓嬮溃鏄浣跨敤`json.load`璇诲彇JSON鏂囦欢镄勭ず渚嬩唬镰侊细
python
import json
# 镓揿紑JSON鏂囦欢
with open as f:
# 璇诲彇鏂囦欢鍐呭瑰苟杞鎹涓篜ython瀵硅薄
data = json.load
print # 杈揿嚭瑙f瀽钖庣殑鏁版嵁鍐呭
浠ヤ笅鏄
璇︾粏瑙i喷锛
* 棣栧厛锛岄渶瑕佸煎叆Python鍐呯疆镄刞json`妯″潡锛屼互渚夸娇鐢ㄥ叾涓镄勫嚱鏁版潵瑙f瀽JSON鏁版嵁銆
* 铹跺悗锛屼娇鐢╜open`鍑芥暟浠ュ彧璇绘ā寮忔墦寮JSON鏂囦欢锛屽苟灏嗘枃浠跺硅薄璧嫔肩粰鍙橀噺`f`銆傝繖閲岀殑鏂囦欢璺寰'data.json'搴旀浛鎹涓哄疄闄呯殑JSON鏂囦欢璺寰勚
* 鎺ョ潃锛屼娇鐢╜json.load`鍑芥暟璇诲彇鏂囦欢瀵硅薄`f`涓镄凧SON鏁版嵁锛屽苟灏嗗叾杞鎹涓篜ython瀵硅薄銆傝繖涓杞鎹㈣繃绋嬬О涓鸿В鏋愩傚皢瑙f瀽钖庣殑鏁版嵁瀛桦偍鍦ㄥ彉閲廯data`涓銆傛ゅ勮缮鍙浠ヤ娇鐢ㄥ叾浠栭夐”𨱒ヨ繘涓姝ュ畾鍒惰诲彇杩囩▼銆
* 链钖庯纴阃氲繃镓揿嵃鍙橀噺`data`镄勫唴瀹癸纴鍙浠ラ獙璇佽В鏋愬悗镄勬暟鎹鏄钖︽垚锷熻诲彇骞跺瓨鍌ㄥ湪Python瀵硅薄涓銆傚畬鎴愭搷浣滃悗锛屼娇鐢╜close`鏂规硶鍏抽棴鏂囦欢锛岄喷鏀捐祫婧愩傚傛灉澶勭悊瀹屾枃浠跺悗涓嶅啀闇瑕佷缭鐣欐枃浠跺硅薄锛屼篃鍙浠ヤ娇鐢≒ython镄勪笂涓嬫枃绠$悊鍣锛岃繖镙峰湪浠g爜鍧楃粨𨱒熸椂鏂囦欢浼氲嚜锷ㄥ叧闂銆傝繖镙峰彲浠ョ‘淇濆嵆浣垮湪鍙戠敓寮傚父镞朵篃鑳芥g‘鍏抽棴鏂囦欢锛岄伩鍏嶈祫婧愭硠婕忋