質問: '4' print(type(float(a / b))) このコードを実行したので TypeError: unsupported operand type(s) for /: 'str' and 'str' このエラーが出るのはわかりますが、 中盤のエラーはなんでしょうか? 私の別の質問でも同じようなことが起こっています。 何かファイルに問題があるのでしょうか?? python3.7 のファイルにあるんですか?? 助けてください Traceback (most recent call last): File "/Users/gwoninkenji/.vscode/extensions/ms-python.python-2019.9.34911/pythonFiles/ptvsd_launcher.py", line 43, in main(ptvsdArgs) File "/Users/gwoninkenji/.vscode/extensions/ms-python.python-2019.9.34911/pythonFiles/lib/python/ptvsd/*main*.py", line 432, in main run() File "/Users/gwoninkenji/.vscode/extensions/ms-python.python-2019.9.34911/pythonFiles/lib/python/ptvsd/*main*.py", line 316, in run_file runpy.run_path(target, run_name='*main*') File "/Users/gwoninkenji/anaconda3/envs/py36/lib/python3.7/runpy.py", line 263, in run_path pkg_name=pkg_name, script_name=fname) File "/Users/gwoninkenji/anaconda3/envs/py36/lib/python3.7/runpy.py", line 96, in _run_module_code mod_name, mod_spec, pkg_name, script_name) File "/Users/gwoninkenji/anaconda3/envs/py36/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "/Users/gwoninkenji/py_with_Thony/chapter02/datatype_12.py", line 3, in print(type(float(a / b))) TypeError: unsupported operand type(s) for /: 'str' and 'str'
回答: > > > ``` > float(a / b) > ``` > > これは次のように書いているのと同じです。 ``` tmp = a / b float(tmp) ``` aもbも文字列ですから、演算子 / は適用できません。 先に数値化してから割り算するのが正解です。 ``` float(a) / float(b) ```