请解释这个python字典逻辑是如何工作的

时间:2018-08-15 12:35:41

标签: python

“下面是示例代码,其中它计算字符串中的字符” “有人请解释”

raw_input = "hello world "
dic = {}
s=raw_input
for s in s:
    dic[s] = dic.get(s,0)+1

for k,v in dic.items():
    print (k,v)
=========================
ouput of this code :

h 1
e 1
l 3
o 2
  2
w 1
r 1
d 1

1 个答案:

答案 0 :(得分:1)

for s in s:
    dic[s] = dic.get(s,0)+1

对于字符串中的每个字符s,它都会从字典中获取旧值,并向其中添加1,然后将新值放回字典中。如果s尚未在字典中,则dic.get(s,0)返回默认值0,因此该字符的字典将添加1。

注意:s不是这里最好的循环变量名称,因为它也是您要循环的字符串的名称。 for s in input:将会更容易理解。