Heim  >  Artikel  >  Backend-Entwicklung  >  So lesen und schreiben Sie JSON-Daten in Python (Code)

So lesen und schreiben Sie JSON-Daten in Python (Code)

不言
不言Original
2018-09-13 17:48:451771Durchsuche

Der Inhalt dieses Artikels befasst sich mit dem Lesen und Schreiben von JSON-Daten (Code) in Python. Ich hoffe, dass er für Sie hilfreich ist.

json

Verwenden Sie die Python-Sprache zum Kodieren und Dekodieren von JSON-Objekten.
JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat, das für Menschen leicht zu lesen und zu schreiben ist. Um die JSON-Funktion zu verwenden, müssen Sie das JSON-Modul

  • json.dumps

das Python-Objekt in einen JSON-String kodieren

  • json.loads

wird zum Dekodieren von JSON-Daten verwendet. Diese Funktion gibt den Datentyp des Python-Felds zurück.

Grundlegende Befehle

Codieren Sie das Python-Objekt in ein JSON-String-Format

d = {'name':'sheen',
     'age':17}
jsonStr = json.dumps(d) #{"name": "sheen", "age": 17} <class>

l = [1,3,5,1.2]
jsonList = json.dumps(l)    #[1, 3, 5, 1.2] <class></class></class>
Decodieren Sie den erhaltenen JSON-String in ein Python-Objekt

pydict = json.loads(jsonStr)    #{'name': 'sheen', 'age': 17} <class>

pylist = json.loads(jsonList)   #[1, 3, 5, 1.2] <class></class></class>
Codieren Sie das Python-Objekt in das String-Format von JSON und schreiben Sie es in die Datei

with open('json.txt','w') as f :
    json.dump(d,f)
Dekodieren Sie den JSON-String in der Datei in das Objekt von Python

with open('json.txt') as f:
    jsondict = json.load(f) #{'name': 'sheen', 'age': 17} <class></class>
json-Beispiel

Geben Sie 100 A-Wert an für einen anderen Benutzer wird in der Datei „json_dump.txt“ gespeichert und hat das JSON-Format

json.dump()-Parameter

  • indent

sollte eine nicht negative Ganzzahl sein, wenn es 0 ist oder leer ist, werden die Daten in einer Zeile angezeigt; andernfalls wird die Zeile umgebrochen und das vorhergehende Leerzeichen wird entsprechend der Anzahl der Einrückungen angezeigt

  • sort_keys

Daten nach dem Wert der Schlüssel sortieren

  • separators = ("Trennzeichen zwischen den einzelnen Schlüsseln Element", "Schlüssel und Trennzeichen zwischen Werten")

#给100个不同的用户一个value值
#存放到文件'json_dump.txt',并且是json格式
import json
import string
from random import choice

keys = ['user'+str(i) for i in range(100)]
values = string.ascii_lowercase+string.ascii_uppercase  #大小写字符串

dict = {choice(keys):choice(values) for i in range(100)}

with open('json_dump.txt','w') as f:
    #indent:应该是一个非负的整型,如果是0,或者为空,则一行显示数据;否则会换行且按照indent的数量显示前面的空白
    #sort_keys:将数据根据keys的值进行排序
    #separators = ("每个元素间的分隔符", “key和value之间的分隔符”)
    json.dump(dict,f,indent=4,sort_keys=True, separators=(';', '='))


#为何最后文件不够100行?
#因为随机选取的key值可能会重复,字典类型的key不允许重复,最后得到的数据会少于你给定的100次

So lesen und schreiben Sie JSON-Daten in Python (Code)

IP-Adresse abfragen

Standort abfragen Basierend auf IP lauten einige APIs für Bediener- und andere Informationen wie folgt:

1. 淘宝的API(推荐):http://ip.taobao.com/service/getIpInfo.php?ip=110.84.0.129
2. 国外freegeoip.net(推荐):http://freegeoip.net/json/110.84.0.129 这个还提供了经纬度信息(但不一定准)
3. 新浪的API:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=110.84.0.129
4. 腾讯的网页查询(返回的非json格式): http://ip.qq.com/cgi-bin/searchip?searchip1=110.84.0.129
5. ip.cn的网页(返回的非json格式):http://www.ip.cn/index.php?ip=110.84.0.129
6. ip-api.com: http://ip-api.com/json/110.84.0.129
Die meisten der oben genannten API-Schnittstellen zeichnen sich dadurch aus, dass die zurückgegebenen Daten direkt im JSON-Format vorliegen

import json
from urllib.request import urlopen

# ip = input("请输入你要查询的Ip:")
ip = '8.8.8.8'
url = "http://ip.taobao.com/service/getIpInfo.php?ip=%s" %(ip)
print(url)
# 根据url获取网页的内容, 并且解码为utf-8格式, 识别中文;
text = urlopen(url).read().decode('utf-8')
# print(text,type(text))
data = json.loads(text)['data']
country = data['country']
country_id = data['country_id']
print(country,country_id)

So lesen und schreiben Sie JSON-Daten in Python (Code)

Verwandte Empfehlungen:

So verwenden Sie Python zum Lesen und Schreiben von JSON-Dateien

php-Datenbank, um JSON zu lesen und in die Datenbank zu schreiben, das So lösen Sie

Das obige ist der detaillierte Inhalt vonSo lesen und schreiben Sie JSON-Daten in Python (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn