我有一个类似于此的python列表结构;
seq = ['l', 'm', 'n', 'o', 'p', 'q', 'r', 's']
我增加一个指针,以便在我的代码中的某些事件之后,我可以访问我的列表中的下一个项目(不会干扰或提及列表),这个项目将被传递给函数以返回a和b,如下所示; < / p>
pointer+=1
a, b= get_instruction(seq[pointer])
我收到了错误;
TypeError: 'NoneType' object is not iterable
这是为什么?变量指针在脚本开头设置为0,一旦我把它变为一个,它似乎就会中断。指针递增而没有错误,可以看到增量。为什么它不会简单地返回与列表中指向项目的项目相关的a和b?
答案 0 :(得分:0)
我认为这意味着get_instructions()没有返回任何内容。它需要返回一个适当的变量。除非你向我们展示get_instructions()函数,否则我无法告诉你任何其他内容。我可以告诉你的是,这个功能很可能是一个问题
答案 1 :(得分:0)
您正尝试将None值解压缩为两个变量,而不是长度为2的迭代:
a, b = get_instruction(seq[pointer]) # a, b = None
出于某种原因,您的功能正在评估为无。您必须在函数的内容中更正此行为才能正确解压缩。请记住,您需要一个包含两个项目的迭代。