Python での型変換エラー
Python でプログラミングの練習をしている。
今回、型変換に苦戦し下記のエラーを何度か見た。
TypeError: unsupported operand type(s) for +: 'int' and 'str'
エラーとなるコード
giste9b441fc5bc31c207124eb9cf535f5bb
実行結果
TypeError: unsupported operand type(s) for +: 'int' and 'str'
num = で足し算したい計算内容が float 型等の(数値)になっていないとのことだった
ファンクション同士の足し算はできませんということか。
原因:関数同士で足し算、16進数で足し算
Print で確認すると関数の中身は 0xなんとかと表示されていた。
16進数の状態で足し算しようとしていたことが判明した。
16進数からfloat型か何かしらの数値にしてから足し算しないといけない。
どうするか
Print で出力した数値を足し算できないか考えた
→まあコードで記述するのが難しそうだからやめた。
明らか難しそうでコードが思い浮かばない。
参考:Pythonで2進数、8進数、16進数の数値・文字列を相互に変換 | note.nkmk.me
計算結果をfloat型で出力する
そうしたところで最後に足し算が出来ない
色々考えた結果
何かしらの箱を準備してアレコレ計算すればいいだけだった。
num5=(five_years(0.012))
numという箱に計算結果を入れて
x = [num5+num7+num10]
上記のようにリスト化して
最後に足し算すればいいだけだった。
print(x)
プリントで出力すれば計算結果の合計値が普通に出た。
最終結果
合計値を出すと言う思うような結果が得られた。