真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

什么是PythonJSON

什么是Python JSON,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了江永免費(fèi)建站歡迎大家使用!

您知道如何從在線API傳輸數(shù)據(jù)或?qū)⒏鞣N數(shù)據(jù)存儲到本地計(jì)算機(jī)嗎?您已經(jīng)將自己沉浸于JSON的一種方式中,JSON表示Java Script Object Notation。它是一種著名的流行數(shù)據(jù)格式,用于表示半結(jié)構(gòu)化數(shù)據(jù)。讓我們詳細(xì)了解Python JSON。

Python JSON簡介:

JSON代表JAVA小號script objectn浮選是存儲在一個有組織的和容易的方式信息的方式。在瀏覽器和服務(wù)器之間交換數(shù)據(jù)時,數(shù)據(jù)必須為文本形式。

什么是Python JSON

如果您想知道它是否是JavaScript?那么答案是否定的。它是一個由文本組成的腳本,用于以人類和機(jī)器可讀格式存儲和傳輸數(shù)據(jù)。它是一種受JavaScript啟發(fā)的小型輕量數(shù)據(jù)格式,通常以文本或字符串格式使用。JSON數(shù)據(jù)包幾乎等同于python字典?,F(xiàn)在,您一定想知道。

如何在Python中讀取JSON文件?

問題的答案是,您必須導(dǎo)入JSON模塊,該模塊通常將Python數(shù)據(jù)類型轉(zhuǎn)換為JSON字符串文件。它由直接從JSON文件讀取和寫入的JSON函數(shù)組成。Python具有內(nèi)置的JSON包,并且是標(biāo)準(zhǔn)庫的一部分,因此您無需安裝它。

例子:

import json

現(xiàn)在您已經(jīng)了解了Python中的JSON,下面讓我們更深入地分析Parsing。

解析:

JSON庫可以從字符串或文件中解析JSON 。它還可以將JSON解析到Python字典或列表中,反之亦然。解析通常分為兩個階段:

  1. 從JSON轉(zhuǎn)換為Python

  2. 從Python轉(zhuǎn)換為JSON

讓我們更好地了解這兩個階段。

從JSON轉(zhuǎn)換為Python:

您可以使用以下方法將JSON字符串轉(zhuǎn)換為Python json.loads(). :

例子:

import json
people_string = '''
{
"people":[
{
"emp_name": "John smith",
"emp_no.": "924367-567-23",
"emp_email": ["johnsmith@dummyemail.com"],
"has_license": "false"
},
{
"emp_name": "harshit kant",
"emp_number": "560-555-5153",
"emp_email": "null",
"has_license": "true"
}
]
}
'''
data = json.loads(people_string)
print(data)

輸出:

什么是Python JSON

從上面的輸出中可以看到,它已經(jīng)打印了Python字典。讓我們打印數(shù)據(jù)類型以更好地理解。

例子:

import json
people_string = '''
{
"people":[
{
"emp_name": "John smith",
"emp_no.": "924367-567-23",
"emp_email": ["johnsmith@dummyemail.com"],
"has_license": "false"
},
{
"emp_name": "harshit kant",
"emp_number": "560-555-5153",
"emp_email": "null",
"has_license": "true"
}
]
}
'''
data = json.loads(people_string)
print(type(data))  #prints the datatype

輸出:

現(xiàn)在,您已經(jīng)熟悉一個轉(zhuǎn)換,讓我們在第二階段看看另一種轉(zhuǎn)換類型。

從Python轉(zhuǎn)換為JSON:

通過使用json.dumps(). 下面給出的示例,可以將Python對象轉(zhuǎn)換為JSON字符串:

例子:

import json
people_string = '''
{
"people":[
{
"emp_name": "John smith",
"emp_no.": "924367-567-23",
"emp_email": ["johnsmith@dummyemail.com"],
"has_license": "false"
},
{
"emp_name": "harshit kant",
"emp_no.": "560-555-5153",
"emp_email": "null",
"has_license": "true"
}
]
}
'''
data = json.loads(people_string)
new_string = json.dumps(data)
print(new_string)

輸出:

什么是Python JSON

輸出將是JSON字符串類型。我已經(jīng)在JSON到Python的轉(zhuǎn)換中演示了數(shù)據(jù)類型,將遵循相同的過程來打印數(shù)據(jù)類型。

讓我們繼續(xù)前進(jìn),看看Pandas如何解析JSON。

熊貓解析JSON:

可以通過以下步驟將JSON字符串解析為pandas Dataframe:

  • 以下通用結(jié)構(gòu)可用于將JSON字符串加載到DataFrame中

import pandas as pd
 
pd.read_json(r'Path where you saved the JSON fileFile Name.json')
  • 準(zhǔn)備JSON字符串。

  • 創(chuàng)建一個我們正在使用的JSON文件nobel_prize.json。

  • 將JSON文件加載到pandas DataFrame中。

下面實(shí)現(xiàn)的代碼將我的JSON文件加載到DataFrame中。

import pandas as pd
import json
 
with open(r'C:UsersHarshit_KantDesktopnobel.prize.json') as f:
   data = json.load(f)
print (data)
 
df = pd.DataFrame
 
print(df)

輸出:

什么是Python JSON

繼續(xù)前進(jìn),讓我們看看如何在Python中序列化JSON。

JSON序列化[編碼]:

序列化JSON只是意味著您正在編碼JSON。它將給定的Python數(shù)據(jù)結(jié)構(gòu)(ex:dict)轉(zhuǎn)換為其有效的JSON對象。為了處理文件中的數(shù)據(jù)流,Python中的JSON庫使用dump()dumps()方法,該方法進(jìn)行轉(zhuǎn)換并使其易于將數(shù)據(jù)寫入文件中。

下表是說明將Python數(shù)據(jù)類型轉(zhuǎn)換為各自的JSON類型的表格。

什么是Python JSON

要記住的要點(diǎn):

dump() –將數(shù)據(jù)轉(zhuǎn)換為JSON文件
dumps() –將數(shù)據(jù)轉(zhuǎn)換為JSON字符串
load() –將JSON文件轉(zhuǎn)換為Python對象
loads()–將JSON字符串的對象轉(zhuǎn)換為Python對象

漂亮的印刷:

Pretty Printing負(fù)責(zé)代碼對齊并使其以人類可讀的格式進(jìn)行。讓我們看下面的示例,其中我傳遞了兩個參數(shù)'sort_keys',這些參數(shù)始終返回布爾True值和'indent'空格。

例子:

import json
people_string = '''
{
"people":[
{
  "emp_name": "John smith",
  "emp_no.": "924367-567-23",
  "emp_email": ["johnsmith@dummyemail.com"],
  "has_license": "false"
},
{
  "emp_name": "harshit kant",
  "emp_no.": "560-555-5153",
  "emp_email": "null",
  "has_license": "true"
}
]
}
'''
 
data = json.loads(people_string)
new_string = json.dumps(data, sort_keys=True, indent=3)
print(new_string)

輸出:

什么是Python JSON

繼續(xù)進(jìn)行Python JSON教程,讓我們了解JSON的反序列化。

JSON的反序列化[Decode]:

JSON的反序列化與序列化完全相反,也就是說,這意味著您正在解碼JSON。它將通過使用執(zhí)行轉(zhuǎn)換的load()load()方法將給定的JSON字符串轉(zhuǎn)換為Python對象。

下表是說明將JSON數(shù)據(jù)類型轉(zhuǎn)換為其相應(yīng)的Python類型的表格。

什么是Python JSON

繼續(xù)進(jìn)行“ Python JSON”教程。我將通過編碼的角度向您展示一個同時進(jìn)行序列化和反序列化的實(shí)時示例。

編碼演示:

在此編碼演示中,我將使用此處給出的JSON數(shù)據(jù)集,稱為“諾貝爾獎” 。您將學(xué)習(xí)如何通過JSON文件進(jìn)行序列化和反序列化。

示例(JSON數(shù)據(jù)集的序列化):

import json
 
with open('nobel_prize.json.html') as f:
    data = json.load(f)
 
with open('new_nobel_prize.json.html') as f:
    json.dump(data,f,indent=2)

輸出:

Python代碼已成功編譯,并創(chuàng)建了一個新文件“ new_nobel_prize.json”,將從現(xiàn)有文件“ nobel_prize.json”中轉(zhuǎn)儲數(shù)據(jù)。

什么是Python JSON

示例(JSON數(shù)據(jù)集的反序列化):

import json
 
with open('nobel_prize.json.html') as f:
data = json.load(f)
 
for nobel_prize in data['prizes']:
print(nobel_prize['year'],nobel_prize['category'])

輸出:

該代碼段顯示了從JSON文件到其相應(yīng)的Python對象的更改。

什么是Python JSON

看完上述內(nèi)容,你們掌握什么是Python JSON的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


網(wǎng)站題目:什么是PythonJSON
文章來源:http://weahome.cn/article/jpgjhp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部