是或否循环(TypeError:' NoneType'对象不可迭代)错误

时间:2016-10-12 17:18:01

标签: python

我尝试执行是/否/重试,但我收到此错误:' NoneType'对象不可迭代。我假设问题是函数(def izberiEkipo()没有返回它所假设的内容。

def izberiEkipo():

    m  = set(['m'])
    p = set(['p'])


    while False:
        if reply in m:
            with open('vprasanja2.txt') as f:
                vsaVprasanja = [line.strip() for line in f]
                max_line = len(vsaVprasanja)
            True


        elif reply in p:
            with open('vprasanja.txt') as f:
                vsaVprasanja = [line.strip() for line in f]
                max_line = len(vsaVprasanja)
            True

        else:

            sys.stdout.write("Answer with 'm' ord 'p'")


        return (max_line, vsaVprasanja)  

def genVprasanja ():

    obsVred = set()
    maxL, vsaQ = izberiEkipo()
    tocke = 5
    total = 0
       .
       .
     [...]

1 个答案:

答案 0 :(得分:0)

你的假设是正确的:如上所述,你的上层函数什么都不返回。您已使用 False 条目禁用了循环:它根本不会运行。函数中唯一的返回位于该循环内。

因此,所有例程都是为每个创建两组单个字符,然后将返回到主程序。既然你还没有包含重现问题的代码 - 事实上,在你的例子中引发错误的行不是 - 而且没有回溯,我们不能帮助远远超过此