iT邦幫忙

0

工程師菜鳥_宇弟的 學習筆記 [Python] 09 - [Python] [Json] 進階說明

  • 分享至 

  • xImage
  •  

[Python] 之旅第9天

上回我們知道 python的"string" ,和 Json 的"dictionary"互通
小小用程式code展示一下:

import json
 
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
 
data2 = json.dumps(data)
print (type(data2))        #顯示data2 的屬性
print(data2)               # 顯示/印 出來看長甚麼樣子
 
jsonData2 = json.loads(jsonData)
print (type(jsonData2))    #顯示jsonData2 的屬性
print(jsonData2)           # 顯示/印 出來看長甚麼樣子

成果會長這樣喔:

https://ithelp.ithome.com.tw/upload/images/20221111/20153034DVAFcgrNx1.jpg

我們可以得知
名子 "data2" 裏頭存的是 string 資料格式
名子 "jsonData2" 裏頭存的是 dictionary 資料格式


實用練習

  • 練習1- [Json] 的實際應用 print印出 名子“name” 和其他 Json資料裡的column(key)

  • 練習2- [Json] 刪除 Json資料裡的column(key)


練習1- [Json] 的實際應用 print印出 名子“name” 和其他 Json資料裡的column(key)

import json
 

jsonData = '{"people" :[ {"name":"Joy" ,"phone": "09111111" ,"gender": "male","birthday":"1998/11/4"} , {"name":"Tom" ,"phone": "09111109222222211" ,"gender": "female","birthday":"2222/9/7"} ] }'
# 原本存在jsonData 裡的資料格式 還只是 string
 
print("=============")
 
# 經過 "json.loads" 之後 , 存在jsonData2裡的資料格式就是 json 
jsonData2 = json.loads(jsonData)
 
# 依序打印 people(人) 中的 name(姓名) 跟 gender(性別)
for person_newvalue in jsonData2['people']:
    print(person_newvalue['name'])
    print(person_newvalue['gender'])
 
    print("~ ~ ~")

成果會長這樣喔:
https://ithelp.ithome.com.tw/upload/images/20221111/20153034fNaWAUQi7V.jpg


練習2- [Json] 刪除 Json資料裡的column(key)

import json

# 這也是建立資料的方法,現在 "o" 裏頭有存儲json 資料
o = json.loads("""[
    {
        "ename": "mark",
        "url": "fbfunny.com"
    },
    {
        "ename": "egg",
        "url": "Lennon.com"
    }
]""")
 
 # 如果資料 o 裏頭的column 'url' 的有 "Lennon.com" 就刪除
for idx, dictionary in enumerate(o):
    if dictionary['url'] == "Lennon.com":
        o.pop(idx)

# 再印 o 出來
print(o)

成果會長這樣喔:
https://ithelp.ithome.com.tw/upload/images/20221111/20153034fmW18wXODn.jpg

可以看到,函"Lennon.com"的資料被刪除了

今天就先醬 > _ <

其他貼文~~
(變強,就從小小的累積開始)

[Python] 之旅第1天 - python環境
https://ithelp.ithome.com.tw/articles/10296280

[Python] 之旅第2天-用 [Python] 跟 [Flask] 為基礎,把 URL input 抓出來
https://ithelp.ithome.com.tw/articles/10296290

[Python] 之旅第3天- 用 [Python] 跟 [Flask]
https://ithelp.ithome.com.tw/articles/10296965

[Python] 之旅第4天- [Python] [Flask] 的應用
https://ithelp.ithome.com.tw/articles/10303948

[Python] 之旅第5天- [Python] [Flask] 的應用, 日期計算 及日期報錯篇
https://ithelp.ithome.com.tw/articles/10309202

[Python] 之旅第6天- [Python] [Flask] 的應用, 比較有小數點圓的面積大小,簡易請假系統製作
https://ithelp.ithome.com.tw/articles/10309352

[Python] 之旅第7天- [Python] [regular expression] 的應用,找特定資料,或限制輸入的格式
https://ithelp.ithome.com.tw/articles/10309371

[Python] 之旅第8天 - [Python] [regular expression] 的應用, 甚麼是 Json
https://ithelp.ithome.com.tw/articles/10309422

[Python] 之旅第9天 - [Python] [Json] 進階說明
https://ithelp.ithome.com.tw/articles/10309620


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言