首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未定义的变量循环

未定义的变量循环
EN

Stack Overflow用户
提问于 2012-06-27 07:06:22
回答 2查看 1.2K关注 0票数 0

我是Python的新手。我得到一个错误,说“未定义的变量”。我想不出来。代码中的语句如下:

代码语言:javascript
复制
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)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-27 07:08:21

在定义Loop()函数之前,您正在调用它。

票数 3
EN

Stack Overflow用户

发布于 2012-07-12 00:10:20

首先,你必须组织:

代码语言:javascript
复制
class classroom,
    def loop

在你的函数循环中写下全局变量:

代码语言:javascript
复制
global m_count
global h_count
global t_count

最后更改if语句:

代码语言:javascript
复制
if HardConstraintClassroomMet == False and HardConstraintMutatedMet == False:
        h_count = h_count + 1
        t_count = t_count + 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11217180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档