python字典来看看

img


为什么ewrd四个元素对应的值都为1 ,最后在字典里面展示不出来

str1 = "helloworld"
list1 = list(str1)
list2 = []
list3 = []
dict1 = {}
for i in list1:
    if i not in list2:
        list2.append(i)
        z = list1.count(i)
        list3.append(z)
# print(list2)
# print(list3)
# print(list2[0])
# print(list3[0])
for a in list2:
    for b in list3:
        # print(list2.index(a),list3.index(b))
        if list2.index(a)==list3.index(b):
            dict1.setdefault(a,b)
        # elif list2.index(a) > len(list3):
        #     dict1.setdefault(a)
print(dict1)



```

list3.index(b)
因为list2里的字母无重复,但是list3里表示次数的元素却有重复,比如h和e的次数都是1次,所以index只会返回第一个1的位置,这样list2后面的、但是出现次数同样是1的字母的位置就和1的位置不同,也就不会加入字典了。