Как добавить в список нулевые значения ключей словаря?
У меня есть словарь, который имеет несколько ключей и каждый ключ имеет несколько значений в формате списка, если ключи имеют значение Null
, то ключ должен быть appended
в списке.
вот мой словарь:
{'XSTY':['21.01', '22.01'], 'STRY': ['31.01', None], 'SYER': ['34.21', None], 'HUHTY': [None, '45.22]}
и я использую этот подход для добавления в список значений ключей, значения которых равны null
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,HUHTYall of these keys whose values are
None` внутри списка. Любая помощь будет оценена по достоинству.
Я знаю, что он не добавляет другие ключи из-за этого условия if i == 'HUHTY':
.
пожалуйста, предложите лучший подход, чтобы сделать то же самое динамически.
Это то, что вы ищете?
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']
Надеюсь, это поможет вам
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)
Поскольку в комментариях к другому ответу вы указали, что хотите получить его в виде строки, которую можно отправить по электронной почте, подойдет следующее:
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])
print(email_string)
STRY, SYER, HUHTY