我有一個有多個鍵的字典,每個鍵都有多個串列格式的值,如果鍵有一個Null值,那么鍵應該是appended一個串列。
這是我的字典:
{'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22]}
我正在使用這種方法來附加串列中值為空的鍵的值
final_dict = {'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22]}
data = []
for in in final_dict.keys():
if i == 'HUHTY':
if len(final_dict[i]>0:
data.append(i)
print("Append Success")
else:
print("data did not append")
上面的代碼僅在串列中附加此鍵的資料HUHTY', but it should append the data for STRY,SYER,HUHTY all of these keys whose values areNone`。任何形式的幫助將不勝感激。
我知道由于這種情況它沒有附加其他鍵,if i == 'HUHTY':
請提供更好的方法來動態地做同樣的事情。
uj5u.com熱心網友回復:
這是你要找的嗎?
final_dict = {'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22']}
data = [k for k,v in final_dict.items() for i in v if not i]
print(data)
輸出:
['STRY', 'SYER', 'HUHTY']
uj5u.com熱心網友回復:
由于您已在評論中指出(“如果我在電子郵件中傳遞此資料變數,我還有一個問題,那么它會向我發送 3 次相同的電子郵件。這是因為它回圈了 3 次”)您想要的另一個答案它在一個字串中,您可以通過電子郵件發送,這將起作用:
final_dict = {'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22']}
email_string = ', '.join([k for k,v in final_dict.items() if None in v])
send_an_email(message=email_string) #for example, the print statements were for demonstration only
uj5u.com熱心網友回復:
希望這對你有幫助
datas ={'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22']}
data = []
for k,v in datas.items():
for z in v:
if (z) ==None:
data.append(k)
print(data)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/498075.html
標籤:Python django 列表 python-2.7 字典
