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

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

根據相同值出現的次數創建字典鍵

根據相同值出現的次數創建字典鍵

尚方寶劍之說 2023-06-20 15:42:33
我有一個如下的字典,如果發現相同的值 more tahn once 則必須使用增量編號創建字典鍵。TT = {                "TYPE_1" : ['ERROR'],                "TYPE_2": ['FATAL'],                "TYPE_3"  : ["TIME_OUT"],                "TYPE_4" : ['SYNTAX'],                "TYPE_5" : ['COMPILE'],          }  m1 = "ERROR the input is not proper"  m2 = "This should have not occured FATAL"  m3 = "Sorry TIME_OUT"  m4 = "SYNTAX not proper"  m5 = "u r late its TIME_OUT"值“TIME_OUT”在搜索中出現兩次。  count = 0  for key in TT.keys():    print(key)    Key_1 = key        while key_1 in TT:      count = count+1      key_1 = key + "_{}".format(count)上面的代碼給出錯誤 Key_1 未定義。預期輸出:如果相同的值出現不止一次,則應使用增量編號“TYPE_3_1”創建字典鍵:[“TIME_OUT”], TT = {               "TYPE_1" : ['ERROR'],               "TYPE_2": ['FATAL'],               "TYPE_3"  : ["TIME_OUT"],               "TYPE_3_1" : ["TIME_OUT"],               "TYPE_4" : ['SYNTAX'],               "TYPE_5" : ['COMPILE'],        }請對此提出建議。
查看完整描述

1 回答

?
叮當貓咪

TA貢獻1776條經驗 獲得超12個贊

如果您可以重新考慮一些數據結構,那么可以有一種更有效的方法來解決這個問題,但如果那不是一個選項,您可以嘗試這個。


inputs = ["ERROR the input is not proper", 

"This should have not occured FATAL",

"Sorry TIME_OUT",

"SYNTAX not proper",

"u r late its TIME_OUT"]



basic_types = {

                "TYPE_1" : ['ERROR'],

                "TYPE_2": ['FATAL'],

                "TYPE_3"  : ["TIME_OUT"],

                "TYPE_4" : ['SYNTAX'],

                "TYPE_5" : ['COMPILE'],

        }


type_counts = {}

results = {}


for sentence in inputs:

    for basic_type in basic_types:

        if basic_types.get(basic_type)[0] in sentence:

            type_counts[basic_type] = type_counts.get(basic_type, 0) + 1

            

            if type_counts[basic_type] == 1:

                results[basic_type] = [basic_types.get(basic_type)[0]]

            else:

                results[basic_type+"_{}".format(type_counts[basic_type] - 1)] = [basic_types.get(basic_type)[0]]




print(results)


查看完整回答
反對 回復 2023-06-20
  • 1 回答
  • 0 關注
  • 136 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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