Python 如果elif else阻塞,则对每种情况进行评估

Python 如果elif else阻塞,则对每种情况进行评估,python,python-3.5,Python,Python 3.5,我试图将迭代器附加到列表中,但下面的代码针对每种情况进行计算 Less7=Head7=Over7=[] i=0 for i in range(0,10): if i<7: Less7.append(i) elif i==7: Head7=i else: Over7.append(i) 我相信这是基本的,你能给我指出正确的方向吗? 我认为这与数据类型有关。 当我逐步浏览代码时,即使是Head7也会计算[0,1,2

我试图将迭代器附加到列表中,但下面的代码针对每种情况进行计算

Less7=Head7=Over7=[]
i=0

for i in range(0,10):
    if i<7:
        Less7.append(i)

    elif i==7:
        Head7=i

    else:
        Over7.append(i)
我相信这是基本的,你能给我指出正确的方向吗? 我认为这与数据类型有关。 当我逐步浏览代码时,即使是
Head7
也会计算
[0,1,2,3,4,5,6]
,但当
I=7
时,它会正确分配值,但我希望它出现在一个列表中。

您需要创建三个列表,每个可能的结果一个:

less_than_7, is_7, greater_than_7 = [], [], []

for i in range(0, 10):
    if i < 7:
        less_than_7.append(i)
    elif i > 7:
        greater_than_7.append(i)
    else:
        is_7.append(i)
小于7,等于7,大于7=[],[],[]
对于范围(0,10)内的i:
如果i<7:
小于7。附加(i)
如果i>7:
大于7。附加(i)
其他:
is_7.附加(i)
Less7=Head7=Over7=[]
创建一个由三个名称引用的列表,这样您的输出将与添加到同一列表的输出相同,在第一种和最后一种情况下,
Head7=i
设置
Head7
等于
i/7
您需要创建三个列表,每种可能的结果一个:

less_than_7, is_7, greater_than_7 = [], [], []

for i in range(0, 10):
    if i < 7:
        less_than_7.append(i)
    elif i > 7:
        greater_than_7.append(i)
    else:
        is_7.append(i)
小于7,等于7,大于7=[],[],[]
对于范围(0,10)内的i:
如果i<7:
小于7。附加(i)
如果i>7:
大于7。附加(i)
其他:
is_7.附加(i)

Less7=Head7=Over7=[]
创建一个由三个名称引用的列表,这样您的输出将与添加到同一列表时的输出相同,那么您在第一种和最后一种情况下,
Head7=i
Head7
设置为等于
i/7

谢谢!“小于7,等于7,大于7=[],[],[],[],[]”虽然没有做到这一点,但我不得不将每个语句放在单独的一行上。@MechMon,不知道你的意思,代码的工作方式与postedYou的工作方式完全一样
Less7=Head7=Over7=[],[],[],[/code>这与
小于7非常不同,是
大于7=[],[],[]“
一个创建一个列表,另一个创建三个。谢谢!“小于7,等于7,大于7=[],[],[],[],[]”虽然没有做到这一点,但我不得不将每个语句放在单独的一行上。@MechMon,不知道你的意思,代码的工作方式与postedYou的工作方式完全一样
Less7=Head7=Over7=[],[],[],[/code>这与
小于7非常不同,是
大于7=[],[],[]“
一个创建一个列表,另一个创建三个。@PadricCunningham当我实现添加额外的空列表时,我得到了一个错误AttributeError:“tuple”对象没有属性“append”。啊哈!我仍然有任务接线员而不是昏迷。Thx@PadricCunningham当我实现添加额外的空列表时,我得到了错误AttributeError:“tuple”对象没有属性“append”。啊哈!我仍然有任务接线员而不是昏迷。谢谢