成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在 Python 中如何快速創建一個只讀字典?

開發 后端
不少人喜歡在 Python 項目中,使用字典來存放各種數據。雖然這不是一個好習慣,但是對于少量數據來說,用字典無疑是最簡單方便的做法。

不少人喜歡在 Python 項目中,使用字典來存放各種數據。雖然這不是一個好習慣,但是對于少量數據來說,用字典無疑是最簡單方便的做法。但前提是,不要一不小心把字典里面的值給覆蓋了。

我們知道,當我們向字典添加數據的時候:

  1. a = {'name': 'kingname', 'salary': 99999} 
  2. a['address'] = '上海' 

當我們讀取字典的時候,一般寫作:

  1. a['address'] 

所以在代碼里面,確實存在一不小心把字典覆蓋了的情況,例如:

  1. is_rich_man = a['salary'] == 99999 

正常情況下,is_rich_man應該等于 True 或者 False。但如果漏寫了一個等號,變成:

  1. is_rich_man = a['salary'] = 99999 

那么,字典里面的數據就會被覆蓋。但代碼并不會報錯,如下圖所示:

所以,我們是否有什么辦法,實現一個一旦初始化,就不能修改的字典呢?

實際上 Python自帶了這個功能,就是types.MappingProxyType。使用它,可以輕易實現一個不能修改的字典:

  1. from types import MappingProxyType 
  2.  
  3. info = {'name': 'kingname', 'salary': 99999} 
  4. safe_info = MappingProxyType(info) 
  5. print('kingname 的月薪是:', safe_info['salary']) 
  6. safe_info['salary'] = 0 

運行效果如下圖所示:

MappingProxyType像是擋在字典前面的一面盾牌,從前面是無法修改數據的,但是,如果你確實需要修改數據,那么你可以直接修改原始的字典,此時,修改會反映到 MappingProxyType 處理過的對象上面,如下圖所示:

這樣,你在處理數據時,進可攻,退可守,讓可信任的代碼修改數據,防止不信任的代碼修改數據,一舉兩得。

 

責任編輯:趙寧寧 來源: 未聞Code
相關推薦

2023-03-15 09:00:43

SwiftUISlider

2015-08-06 13:44:21

swiftcocoapods

2020-10-14 06:18:20

Golang字符串數組

2017-02-10 20:00:17

Linux共享目錄命令

2021-08-10 07:27:42

Elasticsear集群開源

2018-06-19 16:04:27

Dubbo應用Java

2011-03-10 10:45:47

Azure“Hello Worl

2009-09-22 11:54:42

ibmdwPHP

2021-01-04 09:12:31

集合變量

2021-05-27 09:50:03

連接池FTP服務器

2022-01-05 12:09:16

異步隊列集群

2014-05-26 09:13:46

DockerPython

2023-04-04 09:15:10

NAPI 框架鴻蒙

2013-05-02 10:40:24

xcode

2010-08-05 15:46:13

Flex行為Flex效果

2024-07-02 08:28:17

開源代碼社區

2023-02-13 14:47:32

人工智能機器學習ChatGPT

2017-10-10 14:41:38

Linux

2024-07-19 08:21:24

2024-06-06 09:44:33

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品国产三级国产aⅴ中文 | 久久久国产一区二区三区四区小说 | 久久久久国产 | 成人在线观看免费 | 日韩播放| 国产成人久久精品一区二区三区 | 亚洲精品免费在线观看 | 成人aaa视频 | 一级欧美 | 岛国毛片| 91精品国产欧美一区二区 | 99精品久久99久久久久 | 丝袜 亚洲 欧美 日韩 综合 | 免费在线观看一区二区 | 日韩免费一级 | 午夜精品一区二区三区在线视频 | 亚洲一区二区三区四区五区中文 | 日韩精品一区二区三区在线播放 | 9191在线播放 | 一区视频在线播放 | 国产美女久久 | 91在线精品一区二区 | 亚洲福利网 | 美女高潮网站 | 国产一区二区 | 午夜视频在线观看网址 | 国产亚洲精品精品国产亚洲综合 | jav成人av免费播放 | 国产婷婷在线视频 | 欧美性a视频 | 免费在线观看av的网站 | 日韩精品久久久久久 | 全免费a级毛片免费看视频免费下 | 日韩一区二区三区在线观看 | 久久99精品久久久水蜜桃 | 在线日韩中文字幕 | 久久久精| 久热久热 | 亚洲精品视频免费观看 | 久久亚洲国产 | 91福利网|