我是Python新手。 我收到一个错误,说“未定义的变量”。我无法弄清楚。 在代码中的声明如下:未定义可变循环
Classroom1 = Classroom(FirstCourseStartTime = 8, LastCourseEndTime = 7.75)
m_count = 0
h_count = 0
t_count = 0
l_count = 0
loopsize = 10000
Loop(Classroom1, m_count, h_count, t_count, l_count, loopsize)
def Loop(Classroom1, m_count, h_count, t_count, l_count, loopsize):
for i in range(0, loopsize):
Mutated = Classroom()
Mutated = Classroom1.CopyOfClassroom(Mutated)
Mutated.Mutate()
HardConstraintClassroomMet = Classroom1.ComputeHardConstraint()
HardConstraintMutatedMet = Mutated.ComputeHardConstraint()
if HardConstraintClassroomMet == False and HardConstraintMutatedMet == False:
h_count + 1
t_count + 1
Classroom1.Mutate()
continue
if Mutated.FitnessValue() > Classroom1.FitnessValue():
m_count + 1
t_count + 1
Classroom1 = Mutated
if Classroom1.ComputeHardConstraint() == False:
l_count + 1
temp = l_count*loopsize
print "Unable to meet hard consraints in %d" % temp
Loop(Classroom1, m_count, h_count, t_count, l_count, loopsize)
我想,你是在定义它之前调用函数'Loop'。 – deebee
也许这意味着变量Python告诉你未定义(你忽略告诉我们),可能是未定义的? Python还会告诉你它试图使用未定义变量的那一行;也许比这条线更早定义它会有所帮助。可能值得在这条线上添加一个虚拟的定义,比如'Loop = 0',看看你是否至少得到了一个不同的错误。 – Ben