以一个列表,例如说这一个:int转换成列出蟒蛇
a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
,并编写打印出清单中的所有元素的列表的程序[1,1,2,3 5]是小于5 目前,它作为打印
1
1
2
3
5
我的代码
a = [1,1,2,3,5,8,13,21,34,55,89]
count = 0
for i in a:
if i<=5:
count+=1
print(i)
以一个列表,例如说这一个:int转换成列出蟒蛇
a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
,并编写打印出清单中的所有元素的列表的程序[1,1,2,3 5]是小于5 目前,它作为打印
1
1
2
3
5
我的代码
a = [1,1,2,3,5,8,13,21,34,55,89]
count = 0
for i in a:
if i<=5:
count+=1
print(i)
如果希望所有打印出人l伟大的元素和等于 5然后你做对了。但是如果你想打印出少于5你想要的:
for i in a:
if i < 5:
count += 1
print(i)
要打印出列表,将其保存为列表。您可以使用列表理解来做到这一点:
>>> a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
>>> [i for i in a if i<=5]
[1, 1, 2, 3, 5]
如果我们使用print
,但它仍然看起来是一样的:
>>> print([i for i in a if i<=5])
[1, 1, 2, 3, 5]
您是否也可以使用'filter' –
@ cricket_007是的,非常真实。在py2中,可以使用'filter(lambda x:x <= 5,a)',或者在py2或py3中使用'list(filter(lambda x:x <= 5,a))'。 – John1024
你应该有,如果条件是,如果你想唯一的元素比更小,更严格它应该是if i<5:
而不是i<=5
。
如果要将元素存储在新列表中,请参阅下面的示例。
a = [1,1,2,3,5,8,13,21,34,55,89]
new_list=[]
for i in a:
if i<5:
new_list.append(i)
print new_list
我错过了什么吗?它看起来像预期的和实际的输出匹配。 –
@CharlesMcKelvey他需要它形成像不只是间隔 –
你只是问如何格式化输出,所以它看起来像'[1,1,2,3,5]'而不是'1 1 2 3 5'?如果是这样,可能建议放弃问题的这一部分,以回答刚才提到的作业问题。目前的情况令人困惑。 –