這是一本字典
dictionary = {'Happy':['SMILE','LAUGH','BEAMING'],
'Sad':['FROWN','CRY','TEARS'],
'Indifferent':['NEUTRAL','BLAND', 'MEH']}
我正在嘗試更改整個字典中的值,使 SMILE 變為 Smile, LAUGH 變為 Laugh 等。
這就是我所嘗試的
{str(k).upper():str(v).upper() for k,v in dictionary.values()}
但這樣做的結果是將鍵大寫,并沒有注意到值。
uj5u.com熱心網友回復:
您可以使用:
{k.upper():[s.capitalize() for s in v]
for k,v in dictionary.items()}
輸出:
{'HAPPY': ['Smile', 'Laugh', 'Beaming'],
'SAD': ['Frown', 'Cry', 'Tears'],
'INDIFFERENT': ['Neutral', 'Bland', 'Meh']}
注意。這也在改變大寫的關鍵,我不確定這是否是你想要的。如果不使用k或k.capitalize()
uj5u.com熱心網友回復:
試試下面的
d = {'Happy':['SMILE','LAUGH','BEAMING'],
'Sad':['FROWN','CRY','TEARS'],
'Indifferent':['NEUTRAL','BLAND', 'MEH']}
d = {k:[x.capitalize() for x in v] for k,v in d.items()}
print(d)
輸出
{'Happy': ['Smile', 'Laugh', 'Beaming'], 'Sad': ['Frown', 'Cry', 'Tears'], 'Indifferent': ['Neutral', 'Bland', 'Meh']}
uj5u.com熱心網友回復:
一種解決方案:
result = {k: [emotion[0].upper() emotion[1:].lower() for emotion in v] for k, v in dictionary.items()}
然后result是
{'快樂':['微笑','笑','喜氣洋洋'],'悲傷':['皺眉','哭泣','眼淚'],'冷漠':['中性','平淡', '呸']}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/370799.html
