下記の構文ですが、tq1からパラメータを取得すると
正しい値が加算されず、本来は「1」なのに「10」で
カウントされてしまいます。
1(tq1)+0(tq2)=10
また、tq2からパラメータを取得すると
正しい値で、カウントされます。
0(tq1)+1(tq2)=1
原因が2進数で計算されている可能性かと
思われますので、対処方法が分かりましたら、
よろしくお願いいたします。
Python3.9
1コード 2import json 3import logging 4import traceback 5 6#ログ設定 7logger = logging.getLogger() 8logger.setLevel(logging.INFO) 9 10def lambda_handler(event, context): 11# TODO implement 12 13#コールフローからパラメータ取得 14 Attributes = event.get('Details', {}).get('ContactData', {}).get('Attributes', {}) 15 tq1 = Attributes.get('tq1', '') 16 tq2 = Attributes.get('tq2', '') 17 18 19#計算した値をStayCallCountに入れる 20 StayCallCount = tq1 + tq2 21 22 return { 23 'StayCallCount': StayCallCount 24 }
このままではコードが読めないので、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
Attributesの'tq1', 'tq2'にはどのような型(整数とか文字列など)のデータが格納されていますか?原因はtq1, tq2が文字列になっているだけで、StayCallCount = int(tq1) + int(tq2) とすることで正常に動作しませんか?
回答1件
あなたの回答
tips
プレビュー