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

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

如何向字典的每個鍵添加一個字符串?

如何向字典的每個鍵添加一個字符串?

DIEA 2022-12-20 15:22:19
我有一本字典,其中每個鍵都由一個字符串組成,例如。['ba']每個值都是數字列表,例如。[1, 2, 3, 4,].我想遍歷每個鍵,如果數字 >= 100,我想在每個數字前面添加“D”,例如。'D123,如果數字<100,我想在前面添加“DI”,例如。'DI45'。我寫了下面的代碼,但它并沒有改變字典。def dict_change(dicto):    for key,value in dicto.items():        for numb in value:            if numb >= 100:                numb = 'D' + str(numb)            else:                numb = 'DI' + str(numb)    return dictonew_dict = dict_change(old_dict)謝謝!:)
查看完整描述

3 回答

?
胡子哥哥

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

使用map和聽寫理解:


dct = {"a": [100, 200, 300], "b": [-100, 200, 100]}


def changer(number):

    char = "D" if number > 100 else "DI"

    return f"{char}{number}"



new_dct = {key: list(map(changer, values)) for key, values in dct.items()}

print(new_dct)

輸出


{'a': ['DI100', 'D200', 'D300'], 'b': ['DI-100', 'D200', 'DI100']}


查看完整回答
反對 回復 2022-12-20
?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

def dict_change(dicto):

    modified_dict = {}

    for key,value in dicto.items():

        key_tuple = tuple((('D' if no>100 else 'DI')+ str(no) for no in key))

        modified_dict[key_tuple] = value

    return modified_dict



old_dict = {(110, 12, 13, 14, 15, 101): 'ba', (12, 126, -127, 128): 'pa'}

print(dict_change(old_dict))

輸出


{('D110', 'DI12', 'DI13', 'DI14', 'DI15', 'D101'): 'ba', ('DI12', 'D126', 'DI-127', 'D128'): 'pa'}



查看完整回答
反對 回復 2022-12-20
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

這是最緊湊的單行方式:


src = {(11, 12, 13, 14, 15, 16): 'ba', (125, 126, 127, 128): 'pa'}


d_out = {tuple(['Di','D'][i>100]+ str(i) for i in k):v for k,v in src.items()}


print(d_out)


Out[1]:

{('Di11', 'Di12', 'Di13', 'Di14', 'Di15', 'Di16'): 'ba',

 ('D125', 'D126', 'D127', 'D128'): 'pa'}

說清楚

在這種情況下,如果i less than or equal 100給 ['DI','D'][i>100]你['DI','D'][False]解釋為['DI','D'][0]并返回'DI'


在這種情況下,如果i great than 100給 ['DI','D'][i>100]你['DI','D'][True]解釋為['DI','D'][1]并返回'D'


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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