gpt4 book ai didi

python - 如何比较列表中的 4 个连续元素?

转载 作者:行者123 更新时间:2023-11-28 21:40:25 25 4
gpt4 key购买 nike

我是编码新手,所以如果我问的很简单或没有多大意义,我会提前道歉,但我会尽力详细说明。首先,这不是针对我正在学习的任何工作或项目,只是为了让我满意地学习一些编码。我一直在努力寻找一些现实生活中的问题来应用到编码中(主要是伪代码,但 python 语言对我来说也是可以理解的)。

我希望能够有一个包含 x 个元素的列表并按顺序比较其中的 4 个。

例如,myList = [a, b, c, d, e, f, g, h, i, j, k, l]

首先我想比较a、b、c和d。如果 b>a, c>b, d>c 和 d> 所有前三个 (d>a, d>b, d>c) 我想做一些其他的事情去下一个比较。

然后我想比较 b,c,d 和 e。同样,如果 c>b、d>c、e>d 和 e> 所有前 3 个 (e>b、e>c、e>d) 我想要做一些其他的事情去下一个比较。

如果我的列表包含无限元素怎么办? 我的列表 = [:]我从哪说起呢?我必须有一个起点吗?

我猜我必须使用 for 循环遍历列表,但老实说,我不知道如何遍历前 4 个元素,然后从 4 个元素批处理中的第二个元素继续。

由于我目前正在研究数组和列表,也许我缺少某些功能?或者我只是我的大脑可以理解它。

我试着查看 stackoverflow 中的其他帖子,但老实说,我无法从其他人的回答中找出答案。如果有任何帮助或指导,我将不胜感激。

提前致谢。

最佳答案

你可以使用内置的 all() 函数来解决这个问题:

myList = [5, 4, 3, 6, 3, 5, 6, 2, 3, 10, 11, 3]

def do_somthing():
#your code here
pass

for i in range(len(myList)-4):
new_list = myList[i:i+4] #here, using list slicing to jump ahead four elements.
if all(new_list[-1] > b for b in new_list[:-1]) and all(new_list[:-1][c] > new_list[:-1][c+1] for c in range(len(new_list)-2)):
do_something()

关于python - 如何比较列表中的 4 个连续元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45616818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com