迭代一个浮点列表

时间:2016-05-01 22:16:47

标签: python list python-2.7

我有一个浮点数列表,我需要迭代并找到最后4个数字中的最低值

list = [1.1344, 1.254, 1.654, 1.2335, 1.43545]`

for i in list [-4]:

    print i

但我一直在接受:

TypeError: 'float' object is not iterable

3 个答案:

答案 0 :(得分:3)

当您引用列表中的特定元素时,您可以按索引指定其位置。正指数值表示计数应从左向右开始,负数表示计数应从右向左开始。

a = [0.1, 1.1, 2.1, 3.1, 4.1]
b = a[-4]
print(b)
# this will print 1.1

所以你引用一个元素但不引用原始列表中的一系列元素。

要获得一片a,你应该使用类似的东西

a = [0.1, 1.1, 2.1, 3.1, 4.1]
b = a[-4:]
print(b)
# this will print [1.1, 2.1, 3.1, 4.1]

所以,要引用一系列元素,你应该指明范围,并且可以用这种方式完成list[start_index:end_index](注意分号)

遍历整数列表,字符串或浮点列表不是不同的东西。它们都以相同的方式处理,你只是有一个语法错误,即。检查for行并记住解释。

更新:
您可以使用min函数从元素列表中获取最小值,而无需迭代元素。它会是这样的min_value = min(list[-4:])

答案 1 :(得分:0)

现在,您的代码仅从列表中获取第四个最后一项。

如果你想从数组中取出最后四个元素来迭代,你需要改变代码:

for i in list[-4:]:
    print i

答案 2 :(得分:0)

切片的第一部分是开头。如果你不提供第二部分,它就会得到那个元素 尝试以下方法:

for i in list [-4:]: