重複の可能性:
Python 3.0、3.1、3.2 での「ValueError: フォーマット内のフィールド名の長さがゼロ」エラー
この問題を解決するために何時間も費やしましたが、役に立ちませんでした。このガイドを読みました。必要なことを行う方法の例は見つかりませんでした。
スクリプトを実行すると、次のエラーが表示されます (一部省略)。
Traceback (...):
[...]
output.write("{: > 026,.18e} {: > 026,.18e}\n".format(x,y))
ValueError: zero length field name in format.
コードは python 2.6 または 2.7 で書かれていますが、私は python 3.1 を実行しています。それが機能するように、出力形式をどのように変更する必要がありますか?
def f(x,y,a = 0.01):
return y/(a+x)-y**3
def ekspEuler(N,dat):
output = open(dat,"w")
h = 3.0/N
x,y = 0,1 #zac.pogoj
for i in range(1,N+2):
output.write("{: > 026,.18e} {: > 026,.18e}\n".format(x,y))
y += h*f(x,y)
x = i*h
output.close()
ご協力いただきありがとうございます。