私は現在Pythonでラムダを開発していますが、実際にはPythonでjsonsを構築するのに少し苦労しています。printとreturnの結果が異なる
ラムダはdynamodb-tableから読み取り、すべての戻り値をjson構造体に追加します。
これはjsonを印刷するための魅力のように機能しますが、コールバックとして返すことはできません。
のSampleCode:
import json
def lambda_handler(event, context):
jsondata = '{' \
'"cols": [' \
'{"id":"","label":"Timestamp","pattern":"","type":"string"},' \
'{"id":"","label":"Temperature","pattern":"","type":"number"},' \
'{"id":"","label":"Humidity","pattern":"","type":"number"}' \
'],' \
'"rows": ['
jsondata += ']' \
'}'
print jsondata
return jsondata
if __name__ == "__main__":
lambda_handler(None, None)
この「文字列の追加は、」スムーズな方法ではありませんが、それは予想通りの印刷が見えながら
のために働いていただけだったように私には思える:
戻り値は、私のために、戻り値は使用できなくなっているバックスラッシュが含まれています。
アプリケーションが唯一のシェルに印刷されているので、それは正しく値が表示されます。
任意のアイデア?
乾杯と感謝事前に、 マティアス
戻り値は、バックスラッシュが含まれていないものは何でも環境あなたは、ディスプレイをそれを使用しているので、それだけでそれらを表示します。それは
json
モジュールからdumps
機能とJSONを構築する方が簡単だ、と述べた二重引用符で囲まれた文字列リテラルは、文字列の中で二重引用符をエスケープする必要があります。差異についてなぜ、あなたがインポートしている 'json'パッケージを使わないのですか? – schwobaseggl