如何在python中从要输出的字典中删除项目?

时间:2018-06-25 18:08:30

标签: python spyder

我需要在最终输出中创建一个函数:

[{'open': [{'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 0}, {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 1}, {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 2}, {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 3}, {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 4}, {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 5}, {'is_overnight': False, 'start': '1100', 'end': '2100', 'day': 6}], 'hours_type': 'REGULAR', 'is_open_now': False}]

我不想要'is_overnight'和密钥。我该怎么办?

尝试过:

def is_clocked(business_id):
    #import pdb; pdb.set_trace()
    try:
        clocked_ind = get_business(API_KEY, business_id)
        clocked_ind1 = clocked_ind['hours']
    except:
        clocked_ind1 = 'None'
    return clocked_ind1
clocked_ind = is_clocked(b_id)
print(clocked_ind)
#testing
hours = clocked_ind #.pop("is_overnight")
hours.pop('is_overnight')
print(hours)

没用!

1 个答案:

答案 0 :(得分:0)

遍历list并删除is_overnight键及其每个dict的值。喜欢:

my_list = [{'open': [{'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 0},
           {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 1},
           {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 2},
           {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 3},
           {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 4},
           {'is_overnight': False, 'start': '1100', 'end': '2200', 'day': 5},
           {'is_overnight': False, 'start': '1100', 'end': '2100', 'day': 6}], 'hours_type': 'REGULAR',
  'is_open_now': False}]

for i in my_list[0]["open"]:
    del i["is_overnight"]

print(my_list)

输出:

[{'open': [{'start': '1100', 'end': '2200', 'day': 0}, {'start': '1100', 'end': '2200', 'day': 1}, {'start': '1100', 'end': '2200', 'day': 2}, {'start': '1100', 'end': '2200', 'day': 3}, {'start': '1100', 'end': '2200', 'day': 4}, {'start': '1100', 'end': '2200', 'day': 5}, {'start': '1100', 'end': '2100', 'day': 6}], 'hours_type': 'REGULAR', 'is_open_now': False}]