아래의보고를하십시오 역 추적 (마지막으로 가장 최근 통화) : 파일 "C :/사용자/사용자/문서/파이썬에서는 순서가 바뀌지 만 다른 것들은 쓸 수없는 이유는 무엇입니까?
a = 5
print a + b
b = 4
나는 위의 코드를 실행하려고, 에러를 제공합니다 modules/ab.py ", 줄 2, 인쇄 a + b NameError : 이름 'b'가 정의되지 않았습니다.
확인. b
이 정의되기 전에 a + b
이 호출됩니다. 즉, Python은 위에서 아래로 시작하여 코드를 순서대로 실행합니다. 하지만, 어떻게 이것에 대해 :
class Data:
def __init__(self):
self.debug_level = 9
self.assign = [0, 0, 0, 0]
self.days = 0
def create_days(self, startTime, endTime):
res = 0
try:
if self.final_days < self.maximum_days:
위
, self.final_days
및 self.maximum_days
는 하나 아직 정의되지 않은,하지만 오류를 제공하지 않습니다. 그것 뒤에있는 논리는 무엇입니까? 클래스를 정의 할 때 속성에 액세스하지 않기 때문에 그것은 오류를 제공하지 않습니다
"정의"와 "평가"의 구분을 이해합니까? 그걸 먼저 들여다보고 ** 당신의 질문을 ** 업데이트하여 혼란이 무엇인지 설명 할 수 있습니까? –
먼저 전화해야합니다. – riza
'create_days'가 실행되기 전까지 정의됩니다. – tzot