как сказать, есть ли в списке значение больше x

#python-3.x

Вопрос:

 # ...

if 'percentageOff' in response.text:
    data = response.json()
    tree = objectpath.Tree(data['products'])
    percent = tuple(tree.execute('$..percentageOff'))
    disc = [percent,ids]
    discounts.append(list(disc))
    print(discounts)
    break

# ...
 

я пытался положить

 for i in discounts:
    if i < 45.0:
        print("test")
 

но это приводит к ошибке, говорящей о ошибке типа: ‘

выходные данные для добавленного списка:

 [[(8.0, 23.0, 25.0), '6889'], [(8.0, 23.0, 29.0, 25.0), '816'], [(8.0, 23.0, 25.0), '863'], [(8.0, 23.0, 25.0), '884'], [(8.0, 23.0), '808']]
 

я хочу, чтобы он мог определить, равно ли значение = или > 45.0 в выводе

Комментарии:

1. Ваши выходные данные содержат списки кортежей и строк. Какое значение вы хотите сравнить с 45?

Ответ №1:

Что-то вроде?

 for discount_tuple, item in discounts:
    if any((i > 45.0 for i in discount_tuple)):
        print(f'{item} has discount of 45 or more')
 

Я думаю, вы ошиблись, потому что каждый элемент сам по discounts себе является списком.

Комментарии:

1. Вы any(map((45).__lt__, discount_tuple)) тоже можете это сделать 🙂