亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

計算值在字典鍵中重復的次數

計算值在字典鍵中重復的次數

慕斯709654 2022-05-19 16:08:30
我有一個從數據庫中的選擇創建的字典,我需要的是從該字典生成一個指標字典 # create database dictionary with values lds_data = {} for lds_item in db_result: lds_data.update ({lds_item [1]: {'code_client': lds_item [0], 'city': lds_item [2]}})字典的退出: u'BRASIL_ALIMEN ': {' code_client ': u'BRA', 'city': u'SAO PAULO '}, u'BRASIL_CARROS ': {' code_client ': u'BRC', 'city': u'PARANA '}指標示例:code_client: BRA在字典中出現1x加起來:我需要計算在KEY =中重復值的次數*code_client*我試圖這樣做: ct = {} for key in lds_data:     ct ['code_client'] = len (lds_data [key] ['code_client'])
查看完整描述

3 回答

?
呼啦一陣風

TA貢獻1802條經驗 獲得超6個贊

使用Collections.Counter:


from collections import Counter


d = {u'BRASIL_ALIMEN ': {' code_client ': u'BRA', 'city': u'SAO PAULO '},

 u'BRASIL_CARROS ': {' code_client ': u'BRC', 'city': u'PARANA '}}


c = Counter(v[' code_client '] for _, v in d.items())


print(c['BRA'])

# 1

如果你打印c,你會看到它有每個值的計數' code_client '。這使得這很靈活,也許在將來的某一天你需要計數'BRC'.


查看完整回答
反對 回復 2022-05-19
?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

我認為這行不通;它如何處理此案


u'BRASIL_ALIMEN ': {' code_client ': u'BRA', 'city': u'SAO PAULO '},

u'BRASIL_CARROS ': {' code_client ': u'BRC', 'city': u'PARANA '},

u'BRASIL_OTRA   ': {' code_client ': u'BRA', 'city': u'TERRA NADA '},

您現在BRA在您的代碼中有兩次,但您的計數沒有更新。


相反,在字典列表中構建一個值code_client列表,例如


client_list = [inner_dict['code_client'] for inner_dict in lds_data]

現在,制作一份collections.Counter這份清單。


你能從那里完成嗎?


查看完整回答
反對 回復 2022-05-19
?
米脂

TA貢獻1836條經驗 獲得超3個贊

據我所知,您需要計算字典中每個代碼客戶端的數量。ct此代碼將使用每個code_client作為鍵填充字典,并將出現次數作為每個條目的值:


ct = {}

for _, value in lds_data.items():

    if value['code_client'] in ct:

        ct [value['code_client']] += 1

    else:

        ct [value['code_client']] = 1

編輯:我實際上建議使用Austin's answer。它有效地做我正在做的事情,但更正確和簡潔。


查看完整回答
反對 回復 2022-05-19
  • 3 回答
  • 0 關注
  • 164 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號