• 締切済み

python/変数の変換

今ソフトを作っていて調べてもわからないので困っています 合計した数字をtotalという変数に格納しているんですが ファイルへの書き込みの際にf1.write(total)と書くと typeerror: argument 1 must be string or read-only character buffer, not int というメッセージが出ます totalの中身はintengerなのですが それをstringに変換する方法はありませんでしょうか? これがソースコードの一部です n = input("N_data> ") p = input("P_data> ") total = n + p f1.write(total) また三行目と四行目の間に str(total)といれてみましたができませんでした 以上です よろしくお願いいたします

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

MS ASPのカテゴリーですが、Pythonでよろしいですね? エラーメッセージにあるように、第1引数が文字列(かバッファ)でないといけない、とあるので、そのようにすればよいのです。 書き出し用に一時的に変換するなら f1.write(str(total)) 恒久的に変換しておきたいなら total = str(total) とかでしょうね。 数値→文字列変換には他に%演算子を使う方法もあります。 f1.write("%d" % (total,))