【Python】get()函數作用


get()函數作用

以classCount.get(voteIlabel,0)為例:
classCount.get(voteIlabel,0)返回字典classCount中voteIlabel元素對應的值,若無,則進行初始化

  • 若不存在voteIlabel,則字典classCount中生成voteIlabel元素,並使其對應的數字為0,即
    classCount = {voteIlabel:0}
    此時classCount.get(voteIlabel,0)作用是檢測並生成新元素,括號中的0只用作初始化,之后再無作用

  • 當字典中有voteIlabel元素時,classCount.get(voteIlabel,0)作用是返回該元素對應的值,即0

以書中代碼為例:
classCount[voteIlabel] = classCount.get(voteIlabel,0) + 1;

  • 初始化classCount = {}時,此時輸入classCount,輸出為:

    classCount = {}

  • 當第一次遇到新的label時,將新的label添加到字典classCount,並初始化其對應數值為0
    然后+1,即該label已經出現過一次,此時輸入classCount,輸出為:

    classCount = {voteIlabel:1}

  • 當第二次遇到同一個label時,classCount.get(voteIlabel,0)返回對應的數值(此時括號內的0不起作用,因為已經初始化過了),然后+1,此時輸入classCount,輸出為:

    classCount = {voteIlabel:2}

可以看出,+1是每一次都會起作用的,因為不管遇到字典內已經存在的或者不存在的,都需要把這個元素記錄下來


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM