关于arr[1]的混淆以及相反的含义

2024-09-29 22:03:44 发布

您现在位置:Python中文网/ 问答频道 /正文

任务:给定n个数字,我将它们存储在一个列表中,然后找到第二高的数字

我在Github上找到了acisikta19的解决方案:

    n = int(input())
    arr = list(map(int, input().split()))
    arr.sort()
    max1=arr[-1]
    arr.sort(reverse=True)
    for x in arr:
        if x!=max1:
            result = x
            print(result)
            break

我想问max1=arr[-1]的作用是什么?特别是-1

其次,arr.sort(reverse=True)是否只是对负数进行排序?(数字数组为[-100100]


Tags: githubtruemap列表input数字result解决方案
2条回答

我认为最好先用谷歌搜索一下:

这将从列表的后面获取元素(考虑下溢)-1表示最后一个元素,-2表示倒数第二个元素,依此类推

此关键字按降序(而不是默认的升序)对列表进行排序

以以下数组为例:

arr = [5, 1, 7, 3, 6, 9, 22, 66, 15, 68]

arr[0]将是5arr[1]将是1arr[2]将是7,依此类推。
arr[-1]将是68arr[-2]将是15arr[-3]将是66,依此类推。 当您编写arr[n](其中n是一个数字)时,python将使用arr的第n个元素(python计数不是以1开始,而是以0开始)。当您写入arr[-n]时,python将把arr的后面的第n个元素(python反向计数以1开头)

相关问题 更多 >

    热门问题