我有一个庞大的系统日志文件,其中我有一个dict,它在特定时间打印出系统数据, 让我们说:
{"key1":"val1", "Time":"mon dec 25 12:12:12 2012"}
{"key2":"val2", "key3": "val3", "Time":"mon dec 25 12:12:13 2012"}
所以基本上我正在寻找key2和它的相应时间之间的一种操作。
我尝试了以下
look = ["key2", "Time"]
for key, val in my_dict.items():
if key in look:
print my_dict[key]
但是这将打印出dict1中的时间戳,这也与key1相对应。
那么,我怎样才能在相应的时间找到key2和它的val2?
答案 0 :(得分:0)
检查是否先找到钥匙,然后打印钥匙和“时间”
for key, val in my_dict.items():
if key == "key2":
print my_dict[key]
print my_dict['Time']
答案 1 :(得分:0)
我们假设,因为它对我来说并不完全清楚,所以你可以记录日志:
log = [
{"key1":"val1", "Time":"mon dec 25 12:12:12 2012"},
{"key2":"val2", "key3": "val3", "Time":"mon dec 25 12:12:13 2012"}
]
for d in log:
if 'key2' in d:
print d['Time']
这是你需要的吗?
答案 2 :(得分:0)
如果我正确理解了您的问题,那么您正在阅读一系列词典(从哪里开始并不重要)并想要从中打印出某些值,但前提是两个值的键都存在。在您的示例中,您希望打印第二个字典的val2
和时间戳,但您当前的代码也会打印第一个字典中的时间戳,即使它没有{{1密钥。
如果是这样,我认为您需要使用key2
来测试所有请求的密钥是否存在,然后再打印任何内容。
all