name - ValueError:길이가 0 인 필드 이름(형식은 python[duplicate])



zero length field name in format python (1)

기존의 Python 버전을 실행하고있을 가능성은 있지만 3.1은 아닙니다. 파이썬 2.6에서는 다음과 같이 형식 스펙에 인덱스가 필요합니다.

"{0} {1}\n".format(x,y)

문제를 해결하려면 Python 버전을 최근 버전 (2.7 또는 3.2)으로 업데이트하십시오. 문서에 따르면 숫자 인덱스를 생략하면 Python 3.1에서 작동합니다 .

버전 3.1에서 변경됨 : 위치 인수 지정자는 생략 될 수 있으므로 '{} {}'은 '{0} {1}'과 같습니다.

가능한 중복 :
"ValueError : 형식의 길이가 0 인 필드 이름"Python 3.0,3.1,3.2의 오류

나는이 문제를 해결하려고 노력했지만 시간을 낭비했다. 이 가이드를 읽었습니다. 나는 내가 필요한 것을 어떻게하는지 예제를 발견하지 못했다.

스크립트를 실행하면이 오류가 발생합니다 (부분적으로 생략 됨).

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()

당신의 도움을 주셔서 감사합니다.





format