我是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)发布于 2012-06-27 07:08:21
在定义Loop()函数之前,您正在调用它。
发布于 2012-07-12 00:10:20
首先,你必须组织:
class classroom,
def loop在你的函数循环中写下全局变量:
global m_count
global h_count
global t_count最后更改if语句:
if HardConstraintClassroomMet == False and HardConstraintMutatedMet == False:
h_count = h_count + 1
t_count = t_count + 1https://stackoverflow.com/questions/11217180
复制相似问题