0
각 값이 다른 사전이 될 사전을 만들려고합니다. 여기 내가하는 일이있다.파이썬 사전의 가치는 다른 사전입니다 - 가장 좋은 방법은 무엇입니까?
import json
import boto.ec2.cloudwatch
conn = boto.ec2.cloudwatch.connect_to_region('ap-southeast-1')
alarms = conn.describe_alarms()
all_dict = {}
whitelist = ["name", "metric", "namespace", "statistic", "comparison", "threshold", "period", "evaluation_periods", "unit", "description", "dimensions", "alarm_actions", "insufficient_data_actions", "ok_actions"]
i = 1
x = []
for alarm in alarms:
single_dict = {}
for attr in whitelist:
single_dict[attr] = getattr(alarm, attr)
all_dict[i] = single_dict
i = i+1
print json.dumps(all_dict, sort_keys=True, indent=4, separators=(',', ': '))
완벽하게 작동하지만, 내가 한 것보다 더 똑똑한 방법이있을 것이라고 생각합니다.
이 질문은 [CodeReview.SE] (http://codereview.stackexchange.com/help/on-topic)에 더 적합 할 수 있습니다. 당신은 작업 코드를 가지고 있고 개선을 요구하고 있습니다. –
그러나 여기있는 동안, 단순한 목록이 아닌 정수를 증가시키는 사전을 갖는 것에는 거의 요지가 없습니다. – jonrsharpe
@jonrsharpe 대신 목록을 가질 수는 있지만 목록의 JSON 덤프를 만들면 어떻게 반복 할 수 있는지 잘 모르겠습니다. – hjelpmig