python编程300例之 009 遍历字典计数
作者:互联网
1 # 问题描述: 给定一个数组a[],其中除了2个数,其他均出现2次,请找到不重复的2个数并返回. 2 # 问题示例: [1,2,5,2,3,3,4,4,9,9,10,1] 返回[5,10] 3 class Solution: 4 def func(self, lit): 5 for i in range(len(lit)): 6 for j in range(len(lit)): 7 if i != j and lit[i] == lit[j]: 8 lit[i] = '' 9 lit[j] = '' 10 new_lis = [] 11 for i in lit: 12 if i: 13 new_lis.append(i) 14 return new_lis 15 16 17 c1 = Solution() 18 print(c1.func([1, 2, 5, 2, 3, 3, 4, 4, 9, 9, 10, 1])) 19 20 21 # # 计算出现次数最多的字符 22 # Str = input("请输入一串字符:") 23 # resoult = {} # 定义一个空字典 24 # for i in Str: # 遍历输入的字符串,以键值对的方式存储在字典中 25 # resoult[i] = Str.count(i) 26 # for key in resoult: # 遍历字典,格式化输出结果 27 # print(f'"{key}":{resoult[key]}次') 28 # lis = [1, 2, 3, 4, 5, 6, 6] 29 # lis.remove(6) 30 # print(lis) 31 32 def func(a): 33 dic = {} 34 for ele in a: 35 if ele not in dic: 36 dic[ele] = 1 37 else: 38 dic[ele] += 1 39 return [i for i in dic.keys() if dic[i] == 1] 40 41 42 print(func([1, 2, 5, 2, 3, 3, 4, 4, 4, 9, 9, 10, 1])) 43 44 45 # 例九变式 删除列表中重复的数字 计算字符串各个出现的次数返回出现最多的字符串 46 def func(a): 47 dic = {} 48 lis = [] 49 for ele in a: 50 if ele not in dic: 51 dic[ele] = 1 52 else: 53 dic[ele] += 1 54 for i, v in dic.items(): 55 if v == max(dic.values()): 56 lis.append(i) 57 return min(lis) 58 # return [[i, dic[i]] for i in dic.values if i == max(dic.values())] 59 60 # ord 61 62 63 print(func('afhaudshfakskjfds')) 64 65 """ 66 假设定义一字典,m = {"a":3,"e":6,"b":2,"g":7,"f":7,"c":1,"d":5},在不知道key的情况下如何找出字典中value最大的所有key-value对?下面讨论几种方法。 67 68 1)通过m.values()和max()函数 69 70 第一步,通过max()函数找到字典中的value最大值。 71 72 1 max(m.values()) 73 74 结果为7 75 76 第二步,再通过value=7遍历字典找出所有value=7的键值对。 77 78 for key,value inm.items():if(value ==max(m.values())):print key,value 79 80 2)通过sort()函数排序所有的value 81 82 1 values =m.values()2 values.sort()3 print values[len(values)-1] 83 84 结果同样为7,其余步骤通1)中的第二步 85 86 3)通过map()函数 87 88 keys =m.keys() 89 90 keys.sort() 91 92 ma=map(m.get,keys)print ma[len(ma) - 1] 93 94 4)通过sort()函数排序所有的items 95 96 1 #print m.items() 97 98 2 items =m.items()3 items.sort(key=lambda x:x[1])4 print items[len(items) - 1] 99 100 5)通过max()函数指定key函数 101 102 #print m.items() 103 104 print max(m.items(),key=lambda x:x[1]) 105 106 6)通过zip()和max()函数 107 108 1 printm.keys()2 printm.values()3 printzip(m.values(),m.keys())4 print max(zip(m.values(),m.keys())) 109 110 7)通过sorted()函数 111 112 1 print sorted(m.items(), key=lambda x: x[1])2 print sorted(m.items(),key=lambda x:x[1])[len(sorted(m.items(),key=lambda x:x[1])) - 1] 113 114 另外,sorted(m, reverse=True)等价于list(reversed(sorted(reversed(m))))。"""
标签:python,items,dic,300,values,key,max,print,009 来源: https://www.cnblogs.com/yuxin2021/p/15587073.html