欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > python munch庫的使用解析

python munch庫的使用解析

熱門標簽:河北防封卡電銷卡 應電話機器人打電話違法嗎 地圖標注線上如何操作 電銷機器人的風險 400電話辦理哪種 天津電話機器人公司 手機網頁嵌入地圖標注位置 開封語音外呼系統代理商 開封自動外呼系統怎么收費

字典是 Python 中基礎的數據結構之一,字典的使用,可以說是非常的簡單粗暴,但即便是這樣一個與世無爭的數據結構,仍然有很多人 "看不慣它" 。
也許你并不覺得,但我相信,你看了這篇文章后,一定會和我一樣,對原生字典開始有了偏見。
我舉個簡單的例子吧
當你想訪問字典中的某個 key 時,你需要使用字典特定的訪問方式,而這種方式需要你鍵入 一對中括號 還有 一對引號

>>> profile = dict(name="iswbm")
>>> profile
{'name': 'iswbm'}
>>> profile["name"]
'iswbm'

是不是開始覺得忍無可忍了?
如果可以像調用對象屬性一樣使用 . 去訪問 key 就好了,可以省去很多多余的鍵盤擊入,就像這樣子

>>> profile.name
'iswbm'

是的,今天這篇文章就是跟大家分享一種可以直接使用 . 訪問和操作字典的一個黑魔法庫 -- munch。

1. 安裝方法

使用如下命令進行安裝

$ python -m pip install munch

2. 簡單示例

munch 有一個 Munch 類,它繼承自原生字典,使用 isinstance 可以驗證

>>> from munch import Munch
>>> profile = Munch()
>>> isinstance(profile, dict)
True
>>>

并實現了點式賦值與訪問,profile.name 與 profile['name'] 是等價的

>>> profile.name = "iswbm"
>>> profile.age = 18
>>> profile
Munch({'name': 'iswbm', 'age': 18})
>>>
>>> profile.name
'iswbm'
>>> profile["name"]
'iswbm'

3. 兼容字典的所有操作

本身 Munch 繼承自 dict,dict 的操作也同樣適用于 Munch 對象,不妨再來驗證下
首先是:增刪改查

# 新增元素
>>> profile["gender"] = "male"
>>> profile
Munch({'name': 'iswbm', 'age': 18, 'gender': 'male'})

# 修改元素
>>> profile["gender"] = "female"
>>> profile
Munch({'name': 'iswbm', 'age': 18, 'gender': 'female'})

# 刪除元素
>>> profile.pop("gender")
'female'
>>> profile
Munch({'name': 'iswbm', 'age': 18})
>>>
>>> del profile["age"]
>>> profile
Munch({'name': 'iswbm'})

再者是:一些常用方法

>>> profile.keys()
dict_keys(['name'])
>>>
>>> profile.values()
dict_values(['iswbm'])
>>>
>>> profile.get('name')
'iswbm'
>>> profile.setdefault('gender', 'male')
'male'
>>> profile
Munch({'name': 'iswbm', 'gender': 'male'})

4. 設置返回默認值

當訪問一個字典中不存在的 key 時,會報 KeyError 的錯誤

>>> profile = {}
>>> profile["name"]
Traceback (most recent call last):
  File "stdin>", line 1, in module>
KeyError: 'name'

對于這種情況,通常我們會使用 get 來規避

>>> profile = {}
>>> profile.get("name", "undefined")
'undefined'

當然你在 munch 中仍然可以這么用,不過還有一種更好的方法:使用 DefaultMunch,它會在你訪問不存在的 key 時,給你返回一個設定好的默認值

>>> from munch import DefaultMunch
>>> profile = DefaultMunch("undefined", {"name": "iswbm"})
>>> profile
DefaultMunch('undefined', {'name': 'iswbm'})
>>> profile.age
'undefined'
>>> profile
DefaultMunch('undefined', {'name': 'iswbm'})

5. 工廠函數自動創建key

上面使用 DefaultMunch 僅當你訪問不存在的 key 是返回一個默認值,但這個行為并不會修改原 munch 對象的任何內容。
若你想訪問不存在的 key 時,自動觸發給原 munch 中新增你想要訪問的 key ,并為其設置一個默認值,可以試一下 DefaultFactoryMunch 傳入一個工廠函數。

>>> from munch import DefaultFactoryMunch
>>> profile = DefaultFactoryMunch(list, name='iswbm')
>>> profile
DefaultFactoryMunch(list, {'name': 'iswbm'})
>>>
>>> profile.brothers
[]
>>> profile
DefaultFactoryMunch(list, {'name': 'iswbm', 'brothers': []})

6. 序列化的支持

Munch 支持序列化為 JSON 或者 YAML 格式的字符串對象
轉換成 JSON

>>> from munch import Munch
>>> munch_obj = Munch(foo=Munch(lol=True), bar=100, msg='hello')
>>>
>>> import json
>>> json.dumps(munch_obj)
'{"foo": {"lol": true}, "bar": 100, "msg": "hello"}'

轉換成 YAML

>>> from munch import Munch
>>> munch_obj = Munch(foo=Munch(lol=True), bar=100, msg='hello')
>>> import yaml
>>> yaml.dump(munch_obj)
'!munch.Munch\nbar: 100\nfoo: !munch.Munch\n  lol: true\nmsg: hello\n'
>>>
>>> print(yaml.dump(munch_obj))
!munch.Munch
bar: 100
foo: !munch.Munch
  lol: true
msg: hello

>>>

建議使用 safe_dump 去掉 !munch.Munch

>>> print(yaml.safe_dump(munch_obj))
bar: 100
foo:
  lol: true
msg: hello

以上就是關于 munch 的使用全解,替換原生字典絕無問題,munch 的進一步封裝使得數據的訪問及操作更得更加 Pythonic 了,希望有一天這個特性能夠體現在原生的字典上。

到此這篇關于python munch庫的使用解析的文章就介紹到這了,更多相關python munch庫的使用內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python 實用工具狀態機transitions
  • 簡單理解Python中基于生成器的狀態機
  • 狀態機的概念和在Python下使用狀態機的教程
  • 淺談python中常用的excel模塊庫
  • Python 中拼音庫 PyPinyin 用法詳解
  • 教你使用Python pypinyin庫實現漢字轉拼音
  • Python爬蟲基礎之selenium庫的用法總結
  • python爬蟲之selenium庫的安裝及使用教程
  • python狀態機transitions庫詳解

標簽:宿遷 常州 蘭州 成都 六盤水 駐馬店 江蘇 山東

巨人網絡通訊聲明:本文標題《python munch庫的使用解析》,本文關鍵詞  python,munch,庫,的,使用,解析,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python munch庫的使用解析》相關的同類信息!
  • 本頁收集關于python munch庫的使用解析的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    国产精品免费视频观看| 国产精品萝li| 亚欧色一区w666天堂| 99久久777色| 国产精品国产三级国产传播| 久久色中文字幕| 精品一区二区在线观看| 野外性满足hd| 久久综合国产精品| 精品一区二区三区免费毛片爱| 久久精品成人av| 欧美不卡视频一区| 久久精品国产一区二区| 无码一区二区三区在线| 2024国产精品| 国产一区二区三区四区在线观看| 天天干天天操天天拍| 国产日韩欧美高清| 成人a级免费电影| 色婷婷综合久久久中文一区二区| 亚洲色欲色欲www| 亚洲精品乱码久久久久久9色| 欧美三级韩国三级日本三斤| 亚洲一区国产视频| 日本黄色录像片| 精品免费99久久| 国产精品一区在线观看你懂的| 手机在线中文字幕| 亚洲天堂免费在线观看视频| 一本久久a久久精品亚洲| 国产精品天美传媒| 99热精品国产| 欧美日韩小视频| 男女视频一区二区| 任你操精品视频| 亚洲同性gay激情无套| 极品白嫩少妇无套内谢| 日韩午夜av电影| 国产精品亚洲视频| 日本精品一区二区三区四区的功能| 亚洲国产综合91精品麻豆| 国产美女喷水视频| 欧美激情中文不卡| 香蕉网在线视频| 欧美一级黄色大片| 国产精品一线二线三线| 欧美亚洲高清一区| 免费一区二区视频| 久久福利免费视频| 亚洲国产成人高清精品| 五月天精品视频| 综合久久久久久久| 亚洲精品乱码久久久久久久| 国产女人水真多18毛片18精品视频 | 日韩欧美成人一区| 国产99一区视频免费| 欧美午夜片在线看| 精品制服美女久久| 91九色02白丝porn| 免费成人你懂的| 少妇影院在线观看| 丝袜美腿亚洲一区| 顶臀精品视频www| 日韩国产在线观看一区| 天海翼在线视频| 视频在线观看一区| 国产精品白嫩白嫩大学美女| 日本欧美加勒比视频| 色香蕉成人二区免费| 蜜桃av噜噜一区| 日本国产一区二区| 精品亚洲免费视频| 欧美日韩免费视频| 国产成人99久久亚洲综合精品| 337p亚洲精品色噜噜噜| 成人永久免费视频| 日韩女优电影在线观看| 91在线视频免费观看| 久久蜜桃香蕉精品一区二区三区| 91日韩精品一区| 国产免费观看久久| 538国产视频| 一区二区三区日韩欧美| 波多野结衣久久久久| 日本不卡视频在线| 欧美亚洲高清一区二区三区不卡| 国产高清不卡一区二区| 欧美大胆人体bbbb| 久久久久亚洲av无码网站| 中文在线资源观看网站视频免费不卡 | 在线观看亚洲网站| 免费成人在线网站| 欧美日韩dvd在线观看| 成人国产在线观看| 久久久一区二区| 亚洲中文字幕无码av| 夜夜夜精品看看| 在线观看成人毛片| 国内精品伊人久久久久av一坑| 91精品在线观看入口| 99精品视频在线观看| 中文字幕第一区二区| 一级黄色录像毛片| 奇米色一区二区三区四区| 欧美日韩免费一区二区三区 | 色88888久久久久久影院按摩| 国产乱人伦偷精品视频免下载| 日韩欧美综合一区| 午夜不卡久久精品无码免费| 一区二区三区欧美亚洲| 色嗨嗨av一区二区三区| 成人国产精品免费| 中文字幕精品一区| 来吧亚洲综合网| 国产精品99久久久久| 久久久精品黄色| av手机在线播放| 久久国产精品区| 欧美tk—视频vk| 大黑人交xxx极品hd| 日韩精品电影在线| 91精品国产麻豆国产自产在线 | 99精品国产热久久91蜜凸| 中文字幕精品在线不卡| 亚洲怡红院在线观看| 国产高清在线观看免费不卡| 国产欧美日韩不卡免费| 亚洲区一区二区三| 国产成人免费视频一区| 国产精品女人毛片| www色aa色aawww| 99久久久久久99| 亚洲精品日韩综合观看成人91| 欧美性受xxxx黑人xyx| 美国黄色一级视频| 亚洲成人动漫精品| 日韩视频123| 免费看黄色的视频| 国产一区二区三区四区五区入口 | 国产精品一区2区| 国产精品色在线| 色欧美片视频在线观看| 99热这里只有精品2| 亚洲成va人在线观看| 日韩一区二区免费电影| 91久久免费视频| 国产精品一区在线观看你懂的| 国产精品美女久久久久高潮| 色域天天综合网| 亚洲成人激情小说| 日韩福利电影在线| 久久精子c满五个校花| 成人高潮免费视频| 97精品国产露脸对白| 亚洲福利一区二区| 精品奇米国产一区二区三区| 日本成人精品视频| 99re热视频精品| 日日夜夜免费精品| 久久精品欧美一区二区三区不卡| www.超碰在线观看| 久久久无码人妻精品无码| 日本中文字幕不卡| 国产日产欧美一区| 在线视频你懂得一区| 波多野结衣影院| 国产一区三区三区| 亚洲另类色综合网站| 欧美一级xxx| 波多野结衣欲乱| 无码国产精品一区二区高潮| 日韩av成人高清| 中文字幕精品一区二区精品绿巨人| 欧美在线色视频| 亚洲av无码一区二区三区人| 不卡欧美aaaaa| 日韩精品每日更新| 国产精品视频一区二区三区不卡| 欧美日韩高清一区二区| 国产黄色大片免费看| 91丝袜美女网| 日本欧美一区二区三区乱码| 中文字幕在线不卡视频| 91精品国产综合久久久久久漫画| 成人性视频免费看| 高清中文字幕mv的电影| 国产一区二区网址| 亚洲国产精品久久久久婷婷884| 久久久久久一二三区| 欧美三级午夜理伦三级中视频| xxxx日本免费| 91蜜桃网址入口| 精品一区二区在线播放| 亚洲国产视频一区| 国产精品五月天| 欧美成人官网二区| 欧美视频一区在线| 娇小11一12╳yⅹ╳毛片| 黄色录像a级片| 97se亚洲国产综合在线|