python中字典,沒鍵加鍵,有鍵操作其鍵對應的值,的思想
阿新 • • 發佈:2019-01-03
cars = ['魯A32444', '魯B12333', '京B8989M', '黑C49678', '黑C46555', '滬B25041', '黑C34567'] locations = {'滬': '上海', '京': '北京', '黑': '黑龍江', '魯': '山東', '鄂': '湖北', '湘': '湖南'} # 構建此資料型別{'山東': 2, '北京': 1, '黑龍江': 3, '上海': 1} # 方法一 dic = {} for i in cars: if locations[i[0]] in dic: dic[locations[i[0]]]+= 1 else: dic[locations[i[0]]] = 1 print(dic) # 方法二 dic = {} for i in cars: # get方法,如果有鍵返回該鍵對應的值,如果沒鍵,可以設定返回值 dic[locations[i[0]]] = dic.get(locations[i[0]], 0) + 1 print(dic)
list3 = [ {"name": "a", "hobby": "抽菸"}, {"name": "a", "hobby": "喝酒"}, {"name": "a", "hobby": "燙頭"}, {"name": "wu", "hobby": "喊麥"}, {"name": "wu", "hobby": "街舞"}, ] # 構建資料型別 list4 = [{"name": "a", "hobby_list": ["抽菸", "喝酒", "湯頭"]}] # 思想:如果沒鍵就新增鍵,如果有鍵就操作此鍵對應的值 # 方法一 list4 = [] for i in list3: # print(i) for j in list4: if i['name'] == j['name']: # i['name']='a' j['hobby_list'].append(i['hobby']) break else: list4.append({'name': i['name'], 'hobby_list': [i['hobby']]}) print(list4)
li = [11, 22, 33, 44, 55, 77, 88, 99, 90] # 構建資料型別{'key1': [11, 22, 33, 44, 55], 'key2': [77, 88, 99, 90]} # key1對應的小於60的值,key2對應大於60的值 result = {} for i in li: if i < 66: if 'key1' not in result: result['key1'] = [] result['key1'].append(i) else: if 'key2' not in result: result['key2'] = [] result['key2'].append(i) print(result)