我正在嘗試檢查并回圈遍歷數字串列,以查看串列中數字之前的所有數字是否小于串列中所有專案的數字。這是我迄今為止嘗試過的:
myList = [5, 8, 2, 3, 10, 7, 12]
numberList = []
for number in myList:
if number > myList[myList.index(number) - 1]:
numberList.append(number)
但是,這只檢查串列中它之前的數字,而不是它之前的所有數字。我想知道是否有解決此問題的方法或更好的方法來解決此問題。我得到的輸出是 [5, 8, 3, 10, 12],而不是我想要的 [5, 8, 10, 12]。
uj5u.com熱心網友回復:
只需跟蹤最大值:
myList = [5, 8, 2, 3, 10, 7, 12]
numberList = []
maxx = -1
for number in myList:
if number > maxx:
numberList.append(number)
maxx = number
uj5u.com熱心網友回復:
使用串列理解。海象運算子 := 在 python 3.8 及以后版本中可用,非常適合您的情況:
max = mylist[0]
[max := each for each in myList if each > max]
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/452114.html
