前提
pythonでスタックを用いた計算をコーディングしています.
スタックはAには2次元の座標情報(x,y)が格納されており, 型のタイプはtupleです.
Aからpopした座標のx座標のみを, 変数tmpに格納して計算したいのですが, 様々な方法で試みてもエラーメッセージ"unsupported operand type(s) for -: 'tuple' and 'int'" が出て困っています.
実現したいこと
エラーを解消したい.
発生している問題・エラーメッセージ
TypeError Traceback (most recent call last) Input In [86], in <cell line: 7>() 12 break 13 A.push(B[i]) ---> 14 if tmp - init_point[0] < sup: 15 continue 16 else: TypeError: unsupported operand type(s) for -: 'tuple' and 'int'
該当のソースコード
python
for i in range(l): init_point = Q[i] while True: tmp = A.pop()[0] #point1 if tmp == None: break A.push(B[i]) if tmp - init_point[0] < sup: #point2 continue else: break
試したこと
コード中のpoint1に位置する部分において, tmp = A.pop() として, point2においてtmp → tmp[0]に書き換えて行ったが同様の箇所で同様のエラーが出た.
0 コメント