如何使用循环移动到列表中的下一项?

时间:2019-02-04 08:21:31

标签: python

我需要在python中创建一个子例程,该子例程标识列表中的最高编号,但是我不知道如何使用循环将其移至列表中的下一个项目

我尝试将1加到计数器上,但是我不确定语法的具体含义

http-server

这是我尝试过的方法,但是我真的不知道如何解决。任何提示将不胜感激。

4 个答案:

答案 0 :(得分:1)

for loop将按照您要遍历的顺序为您提供每个项目。

您命名了输入数字numbers和数字列表number。交换这些名称以使其更清晰。

您正在遍历numbers的列表,因此每个项目都是一个number。您将其命名为i,这可能使您认为它是一个索引,但实际上并非如此。给它起个好名字:

for number in numbers:

然后您要测试该数字是否最大:

    if number > maximum:
        maximum = number

答案 1 :(得分:0)

这是您想要做的吗?

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="TLF c2">
  <div class="ttimgs mygalleryx lidf2" data-id="4891"></div>
</div>
<div class="TLF c2">
  <div class="ttimgs mygalleryx lidf2" data-id="4892"></div>
</div>

如果要确定列表中的最大值,还可以执行类似的操作(无需重新创建转盘)。

number = []
for i in range(0, 5): # set up loop to run 5 times
    numbers = int(input('Please enter a number: '))
    number.append(numbers) # append to our_list
tempmax = number[0]
maximum = 0
for i in range(len(number)-1):
    if tempmax > maximum:
        maximum = tempmax
        tempmax = number[i+1]
    else:
        tempmax = number[i+1]

print(maximum)

答案 2 :(得分:0)

由于for循环自动查找下一项并将其加载到您要求它的变量中……for YOUR_VAR in YOUR_ITERABLE,因此您需要处理所需的,或者在索引上。

因此,如果您的商品是arr = [10, 20, 30, 40, 50],则可以通过两种方式访问​​它们。

for item in arr:
     print(item) # Will print successively 10, then 20, then 30, then 40, then 50.

array_indices = len(arr)
for index in array_indices:
    print(index) # will print successively 0, 1, 2, 3, 4
    print(arr[index]) # will print successively 10, then 20... 30, 40, 50

答案 3 :(得分:0)

可能您正在寻找max(numbers)。它将返回列表中最大的数字。

如果要获取最大值之后的数字索引,请尝试numbers.index(max(numbers)) + 1

a = [1, 2, 3, 4, 1, 2, 3]
>>> max(a)
4
>>> a.index(max(a))
3
>>> a[a.index(max(a)) + 1]
1

注意:list.index()返回第一个最大值的索引。