|

楼主 |
发表于 2022-11-25 18:48:35
|
显示全部楼层
本帖最后由 无理想的闲鱼 于 2022-11-25 18:50 编辑
我补充几个点,让大家能更清楚一点
get(k,0) 是如果里面能找到k 就输出对应的数字 找不到就输出0
比如原来里面没有k 我现在加入k之前,找k ,肯定是没有的 所以输出0
下一次循环,因为我们把k加进去了,这样下一次找k的时候就会输出1 然后再+1
in other words
- for k in Lst: #这里循环的是Lst这个列表里面的元素
- dic[k] = dic.get(k, 0) + 1 #比如,当k=1时,dic[1] = dic.get(1,0) + 1,现在dic里面肯定没有1这个元素,所以dic.get(1,0)这句的返回值是0,然后再加1,dic[1]就是1了,在进行下一次循环,如果下一次k还是1,现在我们dic里面已经有1这个元素了,这时候dic[1] = dic.get(1,0) + 1,这时候dic.get(1,0)返回值是1,因为在字典里能找到1,现在dic[1]的返回值就是2了,体现在字典里就是{1:2}
复制代码 |
|