バーチャルボックス上のlinuxで、python3系を動かしています。
DynamoDB上にデータを格納したいです。
・dynamo_main.py import os import boto3 from boto3.dynamodb.conditions import Key from botocore.exceptions import ClientError import traceback class DynamoDBAccess: def __init__(self): pass def _put_data(self, db_name, put_data): resource = boto3.resource('dynamodb', region_name='ap-northeast-1', aws_access_key_id='------------', aws_secret_access_key='---------------------') print("resource") print(resource) try: table = resource.Table(db_name) print('table') print(table) table.put_item( Item=put_data ) return True except KeyError: print('invalid request_data') return False except ClientError as e: print(str(e.response)) return False except Exception as e: print(traceback.format_exc()) return False # レコメンド管理情報登録 def put_recommend_manage_data(self, put_data): db_name = "dev-search-history-table" # if db_name is None: # URLがない場合はエラー # self._logger.writeLogError('DynamoDBAccess::put_recommend_manage_data ADDRESS NONE!!') # return False # self._logger.writeLogDebug("put_data: {}".format(put_data)) res = self._put_data(db_name, put_data) return res if __name__ == "__main__": dynamo = DynamoDBAccess() put_data = {} put_data['user_id'] = '5' put_data['data_id'] = '5' put_data['name'] = '東京タワー' put_data['yomi'] = 'とうきょうたわー' put_data['exe_id'] = 'tokyo02' put_data['lon'] = '135' put_data['lat'] = '140' put_data['point'] = ["M": [ {"type":"01"}, {"lon":135} ] ] result = dynamo.put_recommend_manage_data(put_data)
上記のプログラムのある場所で、[python dynamo_main.py]を実行しています。
下記の画像のguide_point以下のリストのデータを、上記プログラムから登録したいです。
guide_point以下のtype、lon、latもです。
[put_data['guide_point'] =]にどのような式を、入力すればよろしいですか。
回答1件
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
こちらの回答が他のユーザーから「説明が不足している回答」という指摘を受けました。