最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python字典中g(shù)et()函數(shù)的基本用法實例

 更新時間:2022年03月28日 11:24:31   作者:百萬雨  
在字典內(nèi)置的方法中,想說的方法為get,這個方法是通過鍵來獲取相應(yīng)的值,但是如果相應(yīng)的鍵不存在則返回None,這篇文章主要給大家介紹了關(guān)于python字典中g(shù)et()函數(shù)的基本用法,需要的朋友可以參考下

前言

以下內(nèi)容均為個人筆記,僅供學(xué)習(xí)參考使用,因內(nèi)容均為自己實踐經(jīng)驗所得,個人水平有限,如有錯誤歡迎指正

注:編程語言為Python3

1.get()函數(shù)利用鍵來獲取值

之前在學(xué)習(xí)python的時候,在獲取值得時候常用的方法就是直接

print(dict[key])

但這種方法中當(dāng)字典中不存在該鍵時會返回KeyError類型錯誤,此時就可以用get()函數(shù)還利用鍵獲取值

print(dict.get(key))

利用get()函數(shù)操作時當(dāng)字典中不存在輸入的鍵時會返回一個None,這樣程序運行時就不會出異常

2.利用字典統(tǒng)計列表中元素出現(xiàn)次數(shù)

比如現(xiàn)在有這么一個列表,讓你統(tǒng)計列表中部分元素出現(xiàn)的次數(shù)

ls=['aa','b','c','ddd','aa']

統(tǒng)計列表中每個元素出現(xiàn)次數(shù):

cou={} #創(chuàng)建一個空字典
for i in ls:
    cou[i]=cou.get(i,0)+1     #之后稱其為get的賦值語句,目的是新建字典鍵值對
    
    '''
    賦值語句代碼等價于
    cou[i]=0
    cou[i}=cou[i]+1
    '''
print(cou)

輸出結(jié)果:

{'aa': 2, 'b': 1, 'c': 1, 'ddd': 1}

get()函數(shù)在這里有兩個參數(shù),第一個是確定要分配值的鍵,第二個是擬定給鍵分配一個初值,但實際要給鍵賦值仍需要get賦值語句(為什么這么說下面有介紹)

比如說我現(xiàn)在添加這個語句到代碼中

cou.get('b',10)   #之后稱為擬定初值語句

擬定初值語句本身對結(jié)果是沒有影響的,因為并沒有實際的對鍵進(jìn)行賦值語句操作(個人感覺擬定初值語句是因為沒有在字典中找到要賦值的鍵,因為根本沒有創(chuàng)建要賦值的鍵,因此賦值失敗,即相當(dāng)于一個沒有返回值的函數(shù),就算給這個函數(shù)賦參數(shù)了也沒有任何返回結(jié)果)

注:get()函數(shù)在作為鍵賦值語句(非擬定賦值語句,區(qū)別看上代碼框內(nèi)注釋)時只有第一次是有效的,(比如get()函數(shù)在第一次對’aa’這個鍵使用get賦值語句后下次再使用get賦值語句時鍵的值仍為第一次賦值運算后的結(jié)果),以下為測試代碼:

ls=['aa','b','c','ddd','aa']
cou={} #創(chuàng)建一個空字典
for i in ls:
    cou[i]=cou.get(i,0)+1  #功能邏輯看下方闡述
cou['aa']=cou.get('aa',10)  #功能同前一條代碼執(zhí)行到第二次時的
print(cou)

這里著重講一下第4行代碼:cou[i]=cou.get(i,0)+1

第行代碼從邏輯上講執(zhí)行了兩次,而這兩次里get語句每次執(zhí)行時的功能是不一樣的:

第一次:cou[i]=cou.get(i,0)+1(i=‘aa’)

此時get語句的功能為賦初值,即把鍵’aa’的初值置為0然后加1

第二次:cou[i]=cou.get(i,0)+1(i=‘aa’)

因get語句已經(jīng)作為賦值語句出現(xiàn)過一次了,因此此時再執(zhí)行這條語句時,賦值功能已經(jīng)無效了,也就是get語句里第二個參數(shù)對’aa’這個鍵已經(jīng)無效了,此時get語句的功能為文章內(nèi)的第一大部分所介紹的功能,所以這條語句此時可等價為

cou[i]=cou.get(i)+1

cou[i]=cou[i]+1

輸出結(jié)果和之前的代碼結(jié)果相同:

{'aa': 2, 'b': 1, 'c': 1, 'ddd': 1}

當(dāng)單獨使用get賦值語句時如果鍵是第一次出現(xiàn)的話,效果等同賦值語句(和之前在空字典里通過for循環(huán)建立新鍵值對效果一樣)

cou['e']=cou.get(e,10) 

輸出結(jié)果:

```python
{'aa': 10, 'b': 1, 'c': 1, 'ddd': 1,'e':10}

順帶一提如果想直接改變字典中鍵的值時可用如下方法:

cou['aa']=10  #這種賦值語句帶有強(qiáng)制性
print(cou)

輸出結(jié)果:

{'aa': 10, 'b': 1, 'c': 1, 'ddd': 1}

補(bǔ)充:和dict[key]的區(qū)別

dict.get(key)和dict[key]在key值存在的情況下,都能得到對應(yīng)的鍵值。但是當(dāng)使用dict[key]時,key必須要存在,否則會報錯。但是dict.get[key]中的key可以不存在,因為get方法有一個默認(rèn)的參數(shù)None,當(dāng)key不存在的時候,返回None。

總結(jié)

到此這篇關(guān)于python字典中g(shù)et()函數(shù)基本用法的文章就介紹到這了,更多相關(guān)python字典get()函數(shù)用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python列表詳情

    python列表詳情

    這篇文章主要介紹了python列表詳情,python沒有數(shù)組,而是引入了列表(list),列表可以存儲任何類型的數(shù)據(jù),而且同一個列表中的數(shù)據(jù)類型也可以不同,下面一起來看文章詳細(xì)內(nèi)容吧
    2021-12-12
  • numpy矩陣乘法中的multiply,matmul和dot的使用

    numpy矩陣乘法中的multiply,matmul和dot的使用

    本文主要介紹了numpy矩陣乘法中的multiply,matmul和dot的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python基礎(chǔ)知識+結(jié)構(gòu)+數(shù)據(jù)類型

    Python基礎(chǔ)知識+結(jié)構(gòu)+數(shù)據(jù)類型

    這篇文章主要介紹了Python基礎(chǔ)知識+結(jié)構(gòu)+數(shù)據(jù)類型,文章基于python基礎(chǔ)知識圍繞主題展開詳細(xì)內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • Python 專題五 列表基礎(chǔ)知識(二維list排序、獲取下標(biāo)和處理txt文本實例)

    Python 專題五 列表基礎(chǔ)知識(二維list排序、獲取下標(biāo)和處理txt文本實例)

    本文主要簡單的介紹使用Python處理txt漢字文字、二維列表排序和獲取list下標(biāo)的相關(guān)知識。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-03-03
  • Python 讀取千萬級數(shù)據(jù)自動寫入 MySQL 數(shù)據(jù)庫

    Python 讀取千萬級數(shù)據(jù)自動寫入 MySQL 數(shù)據(jù)庫

    這篇文章主要介紹了Python 讀取千萬級數(shù)據(jù)自動寫入 MySQL 數(shù)據(jù)庫,本篇文章會給大家系統(tǒng)的分享千萬級數(shù)據(jù)如何寫入到 mysql,分為兩個場景,兩種方式
    2022-06-06
  • python基礎(chǔ)_文件操作實現(xiàn)全文或單行替換的方法

    python基礎(chǔ)_文件操作實現(xiàn)全文或單行替換的方法

    下面小編就為大家?guī)硪黄猵ython基礎(chǔ)_文件操作實現(xiàn)全文或單行替換的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • python批量從es取數(shù)據(jù)的方法(文檔數(shù)超過10000)

    python批量從es取數(shù)據(jù)的方法(文檔數(shù)超過10000)

    今天小編就為大家分享一篇python批量從es取數(shù)據(jù)的方法(文檔數(shù)超過10000),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • 一篇超級全面的Python功能圖譜(推薦)

    一篇超級全面的Python功能圖譜(推薦)

    Python作為一種廣受歡迎的高級編程語言,不僅在基本語法上易于學(xué)習(xí),還擁有強(qiáng)大的標(biāo)準(zhǔn)庫和活躍的開發(fā)社區(qū),本文詳細(xì)介紹了Python從基礎(chǔ)語法到高級應(yīng)用的全面功能,并通過實際案例和代碼示例展示了其在科學(xué)計算、Web開發(fā)、機(jī)器學(xué)習(xí)等多個領(lǐng)域的應(yīng)用,需要的朋友可以參考下
    2024-09-09
  • PyCharm中鼠標(biāo)懸停在函數(shù)上時顯示函數(shù)和幫助的解決方法

    PyCharm中鼠標(biāo)懸停在函數(shù)上時顯示函數(shù)和幫助的解決方法

    這篇文章主要介紹了PyCharm中鼠標(biāo)懸停在函數(shù)上時顯示函數(shù)和幫助,本文給大家分享問題解決方法,對PyCharm鼠標(biāo)懸停函數(shù)上顯示函數(shù)的解決方法感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • PyCharm運行Python代碼時出現(xiàn)"未找到模塊"錯誤解決步驟

    PyCharm運行Python代碼時出現(xiàn)"未找到模塊"錯誤解決步驟

    在使用python的過程中經(jīng)常會遇到一個問題,就是叫什么名字的模塊未發(fā)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于PyCharm運行Python代碼時出現(xiàn)"未找到模塊"錯誤的解決步驟,需要的朋友可以參考下
    2023-11-11

最新評論

宣武区| 奉化市| 阿图什市| 拜泉县| 兴安盟| 丰城市| 得荣县| 龙陵县| 二手房| 彩票| 鄂托克旗| 临城县| 航空| 会东县| 乌拉特后旗| 化州市| 安顺市| 睢宁县| 利川市| 伊春市| 得荣县| 延边| 临桂县| 阿克陶县| 磐石市| 贵德县| 长沙县| 仲巴县| 固阳县| 库伦旗| 霍州市| 永修县| 新乡县| 安仁县| 卢氏县| 高邑县| 二连浩特市| 靖安县| 南通市| 新化县| 兴山县|