前提・実現したいこと
Python3.6.8でAWS関連のスクリプトを作成しています。
APIをコールして返ってきたjson(list型)の中から、
3つの値を取得したいです。
ここに質問の内容を詳しく書いてください。
以下のjson(list型)から'ImageId'の値、'CreationDate'の値、"Tags'で'Key'が'Name'である'Value'の3点を抽出したいです。lamda式等を使ってシンプルに取得する方法がありましたら、ご教示いただけないでしょうか。
tmp = [ {'Architecture': 'x86_64', 'BlockDeviceMappings': [{'DeviceName': '/dev/sda1', 'Ebs': {'DeleteOnTermination': True, 'Encrypted': False, 'SnapshotId': 'snap-XXX', 'VolumeSize': 30, 'VolumeType': 'gp2'}}], 'CreationDate': '2019-04-08T08:10:51.000Z', 'Description': 'DATE:20190408171050 HOST:XXX ' 'USER:XXX TOOL:XXX ' 'SourceInstance:i-XXX ' 'SourceInstanceName=XXX', 'EnaSupport': True, 'Hypervisor': 'xen', 'ImageId': 'ami-XXX', 'ImageLocation': 'XXX/XXX', 'ImageType': 'machine', 'Name': 'XXX', 'OwnerId': 'XXX', 'Platform': 'XXX', 'Public': False, 'RootDeviceName': '/dev/sda1', 'RootDeviceType': 'ebs', 'SriovNetSupport': 'simple', 'State': 'available', 'Tags': [{'Key': 'Name', 'Value': 'XXX'}, {'Key': 'Test', 'Value': '2300'}], 'VirtualizationType': 'hvm'}, {'Architecture': 'x86_64', 'BlockDeviceMappings': [{'DeviceName': '/dev/sda1', 'Ebs': {'DeleteOnTermination': True, 'Encrypted': False, 'SnapshotId': 'snap-XXX', 'VolumeSize': 30, 'VolumeType': 'gp2'}}], 'CreationDate': '2019-04-08T08:10:51.000Z', 'Description': 'DATE:20190408171050 HOST:XXX ' 'USER:XXX TOOL:XXX ' 'SourceInstance:i-XXX ' 'SourceInstanceName=XXX', 'EnaSupport': True, 'Hypervisor': 'xen', 'ImageId': 'ami-XXX', 'ImageLocation': 'XXX/XXX', 'ImageType': 'machine', 'Name': 'XXX', 'OwnerId': 'XXX', 'Platform': 'XXX', 'Public': False, 'RootDeviceName': '/dev/sda1', 'RootDeviceType': 'ebs', 'SriovNetSupport': 'simple', 'State': 'available', 'Tags': [{'Key': 'Name', 'Value': 'XXX'}, {'Key': 'Test', 'Value': '2300'}], 'VirtualizationType': 'hvm'} ]
質問内容に不備がありましたら、ご指摘いただきたく、
助言いただけますと幸いです。
回答1件
あなたの回答
tips
プレビュー