-
set的語法中,add可以添加單個元素,update可以批量添加多個元素
查看全部 -
set元素不能重復而且set是無序的
查看全部 -
d.keys()
d.values()
d.clear()
都不要忘記括號。
查看全部 -
list和dict的區別對比“:
dict的第一個特點是查找速度快,無論dict有10個元素還是10萬個元素,查找速度都一樣。而list的查找速度隨著元素增加而逐漸下降。
不過dict的查找速度快不是沒有代價的,dict的缺點是占用內存大,還會浪費很多內容,list正好相反,占用內存小,但是查找速度慢。查看全部 -
在dict中,使用keys()方法,可以返回dict的所有key
查看全部 -
通過get方法在代碼實現上更加簡單
d.get(key name))
查看全部 -
在dict中,每一項包含一個key和一個value
dict最核心的理解,就是兩個必不可少的元素
在定義里,我們使用花括號
{}
表示這是一個dict,然后key和value之間使用冒號:
分割,并且每一組key:value
的最后,以逗號,
表示這一組的結束。查看全部 -
tuple里面包含list,導致tuple是可變的. 想辦法讓list不可變,換成tuple
查看全部 -
tuple只能夠管理到自己的元素不被改變,但是元素內的列表內的值變化不是受控制的。
查看全部 -
對于組合數據類型數據,tuple依然可變
查看全部 -
tuple的元素也可以是tuple
括號可以是四則運算中的優先級,也可以是tuple的標識,所以使用的時候需要注意
查看全部 -
dict提供keys()函數,可以返回dict中所有的key。
d.keys
dict提供values()函數,可以返回dict中所有的value。
d.values
dict提供clear()函數,可以直接清除dict中所有的元素。
d.clear
dict提供pop()函數,可以刪除指定元素
d.pop
此外,len(keys/values )返回關鍵字組或者值組
查看全部 -
? ? ? 一、? ?dict的key只能是基礎數據類型、字符串、數字等,這些都是不可變的。
????而對于復雜數據類型,tuple是不可變的,可以產生對應的哈希值(一定的),list是可變的。
????因此tuple可以作為dict的key,但是list不可以作為dict的key,否則將會報錯。
????二、遍歷dict有兩種方法,
第一種是遍歷dict的所有key,并通過key獲得對應的value
for?key?in?d: ????value?=?d[key] ????if?value?>60: ????????print(key,value) ????????#?==>key?value
第二種是通過dict提供的items( )方法,items( )方法會返回dict中所有的元素,每個元素包含key和value.
for?key,value?in?d.items(): ????if?value?>?60: ????????print(key,value) ??==>?key?value
查看全部 -
if?name?in?d.keys(): ????d.pop(name)
python刪除dict元素時pop( )方法的參數是dict中的key,當key不存在時,同樣會引起錯誤。比如在上述操作中,已經把Alice的成績刪除了,假如再次pop('Alice' ),將會引發錯誤。
在dict中,使用keys( )方法,可以返回dict的所有key,在刪除某個元素時,刪除也不會拋異常。
查看全部 -
先判斷key存不存在,然后才使用上面的方式獲取對應的value,以避免錯誤。
if?'Alice'?in?d: ????print(d['Alice'])?#?==>?45 if?'Dodo'?in?d:?#?Dodo不存在,所以不會走下面的邏輯 ????print(d['Dodo'])
除了使用這種方法,還有一種方法可以通過key來獲取對應的value,這種方法不會引起錯誤,dict本身提供get方法,把key當作參數傳遞給get方法,就可以獲取對應的value,當key不存在時,也不會報錯,而是返回None。
print(d.get('Alice'))?#?==>?45 print(d.get('Dodo'))?#?==>?None
因為通過get方法在代碼實現上更加簡單,且不會引起錯誤,因此更加推薦使用get方法來獲取dict的元素。
查看全部
舉報