【发布时间】:2019-04-18 14:58:20
【问题描述】:
我正在编写一个程序来可视化列表中小于或大于 9 的项目。这是我制作的列表:
list = [("item1",12.5),("item",2.3),("item",7.0)]
我希望能够打印数字小于 9 的项目,然后打印数字大于 10 的项目。
【问题讨论】:
标签: python python-3.x
我正在编写一个程序来可视化列表中小于或大于 9 的项目。这是我制作的列表:
list = [("item1",12.5),("item",2.3),("item",7.0)]
我希望能够打印数字小于 9 的项目,然后打印数字大于 10 的项目。
【问题讨论】:
标签: python python-3.x
您可以使用list comprehensions,它提供了一种过滤列表的简单方法:
l = [("item1",12.5),("item",2.3),("item",7.0)]
[i for i in l if i[1] > 9]
# [('item1', 12.5)]
相当于下面的for循环:
new_list = []
for i in l:
if i[1] > 9:
new_list.append(i)
print(new_list)
# [('item1', 12.5)]
或者对于小于9的值:
[i for i in l if i[1] < 9]
# [('item', 2.3), ('item', 7.0)]
【讨论】:
给定一个列表,
L = [("item1",12.5),("item",2.3),("item",7.0)]
(注意避免使用关键字list作为变量名),你可以做一个列表推导,例如:
>>> [(item, value) for (item, value) in L if value < 9.0]
[('item', 2.3), ('item', 7.0)]
要更改条件,请更改末尾的If。
【讨论】:
循环/迭代列表中的项目
my_list = [("item1",12.5),("item",2.3),("item",7.0)]
for item in my_list:
if item[1] < 9: # change <9 to whatever condition you want
print(item)
【讨论】:
你可以像这样使用过滤功能:
original_list = [("item1",12.5),("item",2.3),("item",7.0)]
filtered_list = list(filter(lambda x: x[1] < 9.0, original_list))
打印这个:
print(filtered_list)
[('item', 2.3), ('item', 7.0)]
【讨论】:
liste = [("item1",12.5),("item",2.3),("item",7.0)]
index=0
while(index<liste.__len__()):
if liste[index][1] > 9:
print(liste[index])
index=index+1
【讨论】:
将值存储在 2 个列表中
my_list = [("item1",12.5),("item",2.3),("item",7.0)]
less_than_9 = [x for x in my_list if x[1] < 9]
more_than_9 = [x for x in my_list if x[1] > 9]
>>> print(less_than_9)
[("item1",12.5)]
>>> print(more_than_9)
[("item",2.3),("item",7.0)]
【讨论】: