2017-02-16 16 views
-2

Я хочу, чтобы запустить цикл, а для до тех пор, пока существует какое-либо значение в моем списке больше 3.Как запустить цикл while в то время как x или больше не в списке в python?

так, например:

while 3 or greater not in list: 
    run loop 

Есть ли трюк, чтобы достичь этого, не имея создать другой цикл, чтобы проверить это?

Благодаря

EDIT:

благодарит за suggetions. Я фактически проверял массив 2D numpy. Я в конечном итоге сделать это следующим образом:

tilemap = np.zeros((mapheight, mapwidth), dtype = np.int) 

while max(tilemap.ravel()) > 3: 
    run loop 
+0

Убедитесь, что вы пометили свой вопрос на языке программирования. В противном случае вам трудно дать конкретный ответ. Вы пробовали посмотреть основные учебные пособия для этого языка? – Praveen

+0

Я тоже заметил, спасибо. И я огляделся, но ничего не смог найти. – Tea

+2

вы рассмотрели использование встроенной функции ['max'] (https://docs.python.org/2/library/functions.html#max)? – Hamms

ответ

2

Вы, вероятно, ищете что-то вдоль этих линий:

while any(i >= 3 for i in l): 
    # Do something 

Например:

l = [4, 6, 2, 1, 0, 7, 9] 
while any(i >= 3 for i in l): 
    l.remove(max(l)) 
print(l) 

Который оставляет

[2, 1, 0]