字典的增刪改查

来源:https://www.cnblogs.com/cindy7/archive/2019/04/07/10663830.html
-Advertisement-
Play Games

還有一些其他用法 ...


字典的創建方式:
dic={'name':'cindy','age':24,'hobby':'girls','is_handsome':True} #格式{‘鍵’:‘值’,'鍵':數字,.........}
print(dic)
print (dic['name'])
不常用的兩種創建字典的方法
# a=list((1,2,3,4))
# print(a)
# dic2=dict((('name','cindy'),))
# print(dic2)


1 dic1={'name':'cindy'}
2 dic1['age']=24                         #在dic1中添加age鍵 然後賦值為24
3 print (dic1)
4 
5 dic1.setdefault('hobby','girl')        #在dic1中 若setdefault函數中參數鍵存在  則不予理會 若沒有則添加 並返回相應的字典的值
6 print(dic1)
7 
8 red=dic1.setdefault('hobby','girl')
9 print(red)


 1 dic5 = {'name': 'alex', 'age': 18, 'class': 1}
 2 
 3 dic5.clear()                           # 清空字典
 4 print(dic5)
 5 del dic5['name']                       #刪除字典中指定鍵值對
 6 print(dic5)
 7 
 8 print(dic5.pop('age'))                 #刪除字典中指定鍵值對,並返回該鍵值對的值
 9 ret=dic5.pop('age')
10 print(ret)
11 print(dic5)
12 
13 a = dic5.popitem()                     #隨機刪除某組鍵值對,並以元組方式返回值
14 print(a, dic5)
15 
16 del dic5                               #刪除整個字典


dic4={'name':'cindy','age':24,'hobby':'girls','is_handsome':True}
dic4['age']=55
print(dic4)

dic5={'1':'111','2':'222','hobby':'333'}
dic4.update(dic5)                        #將dic4在dic5中沒有的鍵添加進去 如果有相同的鍵則修改成dic5的鍵盤
print(dic4)
print(dic5)


1 dic3={'name':'cindy','age':24,'hobby':'girls','is_handsome':True}
2 print(dic3['name'])
3 print(dic3.keys())                     #keys是所有的鍵 用字典dic3去調用  可返回所有的鍵 返回值的類型是'dict_keys'(這個不用管)
4 print(dic3.values())                   #value是值
5 print(dic3.items())                    #item是key和value都取
6 print(list(dic3.items()))              #使用list將取出的值展示成列表

還有一些其他用法

 1 dic6=dict.fromkeys(['host1','host2','host3'],'test') #分別賦值
 2 print(dic6)                            #{'host3': 'test', 'host1': 'test', 'host2': 'test'}
 3 
 4 dic6['host2']='abc'                    #鍵的替換
 5 print(dic6)
 6 
 7 dic6=dict.fromkeys(['host1','host2','host3'],['test1','tets2'])
 8 print(dic6)                            #{'host2': ['test1', 'tets2'], 'host3': ['test1', 'tets2'], 'host1': ['test1', 'tets2']}
 9 
10 dic6['host2'][1]='test3'
11 print(dic6)                            #{'host3': ['test1', 'test3'], 'host2': ['test1', 'test3'], 'host1': ['test1', 'test3']}
12 
13 
14 
15 av_catalog = {
16     "歐美":{
17         "www.youporn.com": ["很多免費的,世界最大的","質量一般"],
18         "www.pornhub.com": ["很多免費的,也很大","質量比yourporn高點"],
19         "letmedothistoyou.com": ["多是自拍,高質量圖片很多","資源不多,更新慢"],
20         "x-art.com":["質量很高,真的很高","全部收費,屌比請繞過"]
21     },
22     "日韓":{
23         "tokyo-hot":["質量怎樣不清楚,個人已經不喜歡日韓範了","聽說是收費的"]
24     },
25     "大陸":{
26         "1024":["全部免費,真好,好人一生平安","伺服器在國外,慢"]
27     }
28 }
29 
30 av_catalog['歐美']["www.youporn.com"][1]='高清無碼'
31 
32 
33 
34 dic={5:'555',2:'666',4:'444'}
35 print(sorted(dic))                     #根據鍵進行排序
36 print(sorted(dic.items()))             #根據鍵進行排序
37 print(sorted(dic.values())             #根據值進行排序
38 
39 
40 
41 
42 
43 dic7={'name':'cindy','age':18}
44 
45 
46 for i in dic7:
47     print(i,dic7[i])                     #迴圈遍歷字典的推薦方式 print後面的參數第一個是鍵值 第二個是值
48 
49 for i,v in dic7.items():                 #迴圈遍歷字典的另外一種方式 效率更低
50     print(i,v)

 



您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.CSS認識 在談論CSS的概念之前,我們先說一說web標準的目的——其在於創建一個統一的用於web表現層的技術標準,以便通過不同瀏覽器或終端設備向最終用戶展示信息內容。一個網頁的呈現是由三部分組成:結構(Structure)、表現(Presentation)和行為(Behavior)。 而三大部 ...
  • 1、首先得有node和npm的環境,node的下載:http://nodejs.org/download/。安裝node之後,npm也自動生成了,顯示版本號就意味著安裝成功 2、接下來就是安裝vue-cli腳手架,執行以下命令: 在瀏覽器執行 http://localhost:8080,出現以下截圖 ...
  • 一、2D轉換(transform) CSS3中的transform轉換和PS中的變換是一樣的,分別有:縮放、位移、斜切、旋轉 1.1 transform:scale()縮放 transform:scale(w,h); 寬度和高度,w,h都是填寫縮放的倍數,沒有單位,比如1.5就是放大1.5倍,1是默 ...
  • 今天和大家分享下better-scroll這款移動端用來解決各種滾動需求的插件(目前已經支持PC) 關於其中的API大家可以去官網看下 這裡就給大家介紹幾種常用的以及需要註意的點是什麼 首先說一下better-scroll的使用註意問題吧 1、移動端 我們通常採用三段式進行佈局的 例如 <div c ...
  • 定義: 將一個類的介面轉換成客戶期望的另外一個介面(重點理解適配的這兩個字),使得介面不相容的類可以一起工作適用場景: 詳解 首先來從生活中的常見場景來看,一個電源插座輸出都是220V,而我們一些電子設備,比如手機,MP3,MP4,所需要的電壓不一樣,也不可能直接就是220接上,這就需要一個中間的轉 ...
  • 嚴重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframewor ...
  • 強制類型的轉換 規則: 1、執行算術運算時,低類型(短位元組)可以轉換為高類型(長位元組);例如: int型轉換成double型,char型轉換成int型等等。 就是用強制類型來實現。 3、強制類型轉換語法 :當大容量的變數向小的變數的類型去轉換時需要強制轉換 。 (目標類型) 值; 當我的int類型轉 ...
  • Python PIL PIL (Python Image Library) 庫是Python 語言的一個第三方庫,PIL庫支持圖像存儲、顯示和處理,能夠處理幾乎所有格式的圖片。 一、PIL庫簡介 1. PIL庫主要有2個方面的功能: (1) 圖像歸檔:對圖像進行批處理、生產圖像預覽、圖像格式轉換等。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...