Проверка списка на пустоту
выдает пустой список [] . Может выдать и не пустой список, если имеются активные ордера. Вопрос: как, с помощью if задать, чтобы дальнейший код выполнялся, когда список пуст? Я пробую:
result = client.get_active_orders('ETH-BTC')['SELL'] if (result) == False: print(result)
с помощью print я проверяю, будет ли дальше выполнятся код. По моему мнению должно напечататься «[]» . Но ничего не печатается. Значит блок if у меня неверный?
Отслеживать
76.9k 6 6 золотых знаков 56 56 серебряных знаков 123 123 бронзовых знака
задан 4 апр 2018 в 16:24
Кирилл Вишняков Кирилл Вишняков
483 1 1 золотой знак 9 9 серебряных знаков 18 18 бронзовых знаков
Может посмотреть в сторону оператора EMPTY, хотя бы для 1 элемента массива?
11 апр 2018 в 12:24
В Python нет такого оператора.
11 апр 2018 в 16:30
к чему упоминать криптовалюту в таком базовом вопросе? Не могу понять в чём развод.
11 апр 2018 в 17:13
ассоциация: stackoverflow.com/q/53513/14227417
2 фев 2021 в 17:38
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Пустой список не может быть ложным.
Попробуйте вот так
if not result: print(True)
Как проверить, пуст ли список в Python
Списки являются одной из четырех наиболее часто используемых структур данных в Python, и в основном они используются для хранения набора данных.
Решение 1. Использование рекомендованного стиля PEP 8.
В этом подходе мы будем проверять, пуст ли список в Python, используя его логическое значение. Его также называют проверкой истинности.
Согласно официальным документам, вот большинство встроенных объектов, которые считаются ложными:
- константы, определенные как ложные: None и False .
- ноль любого числового типа: 0, 0.0, 0j, Decimal (0), Fraction(0, 1)
- пустые последовательности и коллекции: «, (), [], <>, set(), range(0)
Поскольку пустой список — это просто пустая коллекция, он будет преобразован в логическое значение False .
Мы можем проверить это двумя способами. Давайте возьмем пример, чтобы продемонстрировать оба метода.
В первом подходе, если список содержит значение, тогда условие if оценивается как True, и блок if выполняется, в противном случае условие оценивается как False и переходит к блоку else .
my_list = [] if my_list: print("List is not Empty") else: print("List is Empty")
List is Empty
Второй подход аналогичен, но мы просто делаем инверсию, используя not условие if . В этом случае, если список пуст, условие оценивается как True . Это лучший способ написания кода, а также повышает читабельность кода.
my_list = [] if not my_list: print("List is Empty") else: print("List is not Empty")
List is Empty
Решение 2. Использование метода bool()
Другой подход состоит в том, чтобы проверить, пуст ли список или нет, используя метод bool() . Функция bool() возвращает логическое значение объекта, т. е. либо True , либо False .
Этот подход менее распространен, поскольку мы можем достичь желаемых результатов, не используя метод bool() , как показано в рекомендуемом стиле PEP-8.
my_list = [] if bool(my_list): print("List is not Empty") else: print("List is Empty")
List is Empty
Решение 3. Использование метода len().
Метод len() — еще один популярный способ проверить, пуст ли список в Python. Он возвращает длину переданного ему аргумента. Если длина равна 0, это означает, что список пуст.
Здесь можно использовать две техники.
Первый метод заключается в использовании проверки истинности. Если список пуст, метод len() возвращает 0, который внутренне приводится к логическому значению False .
my_list = [] if len(my_list): print("List is not Empty") else: print("List is Empty")
List is Empty
Вторая техника довольно проста. Мы будем использовать оператор сравнения, чтобы проверить, равна ли длина списка 0. Основное преимущество этого метода заключается в том, что код становится более читаемым и понятным для новичков в Python.
Если длина списка равна 0, то условие выполняется, и можно сделать вывод, что это пустой список.
my_list = [] if len(my_list) == 0: print("List is Empty") else: print("List is not Empty")
List is Empty
Решение 4. Сравнение с пустым списком []
Этот подход довольно прост для начинающих. Здесь мы сравниваем существующий список с новым пустым списком [] внутри условия if. Если условие удовлетворяется, это означает, что список пуст и выполняется блок if, в противном случае выполняется блок else.
my_list = [] if my_list == []: print("List is Empty") else: print("List is not Empty")
List is Empty
Вывод
В Python есть несколько способов проверить, пуст ли список, самый питонический способ — использовать подход в стиле PEP-8, который называется «Проверкой истинности» . Другой альтернативный подход заключается в использовании метода len() с оператором сравнения или методом bool() .
Проверка пустоты списка в Python
Иногда в рамках программирования на Python возникает необходимость проверить, является ли список пустым. Грубо говоря, нужно узнать, содержит ли список какие-либо элементы или нет.
Рассмотрим пример. Допустим, имеется следующий список:
my_list = []
Как можно убедиться, что этот список пуст?
В языке Python для проверки того, является ли список пустым, используются логические операторы.
Есть два основных способа выполнить эту проверку.
1. Прямая проверка
Первый и наиболее прямой способ — это использовать логическую проверку списка. Если список пуст, то он будет интерпретироваться как False в булевом контексте, а если в нем есть хотя бы один элемент, то как True.
my_list = [] if not my_list: print('Список пуст') else: print('Список не пуст')
2. Использование функции len()
Второй способ включает использование функции len(), которая возвращает количество элементов в списке. Если список пуст, функция len() вернет 0.
my_list = [] if len(my_list) == 0: print('Список пуст') else: print('Список не пуст')
Оба этих способа корректно определяют, является ли список пустым. Однако первый способ считается более «питоновским», так как он более прост, читаем и эффективен.
Python-сообщество
![]()
- Начало
- » Python для новичков
- » пустой массив
#1 Авг. 10, 2012 09:06:08
Elena Зарегистрирован: 2012-08-01 Сообщения: 12 Репутация: 0 Профиль Отправить e-mail
пустой массив
Мне нужно определить является ли массив пустой или нет (в numpy). Найти определенную функцию в модуле numpy не могу.
Решила написать примитивный код, но выдает ответ не правильно:
import numpy as np t = np.array([]) # задается пустой массив if t == np.array([]): # если массив пустой то выводится 'pustoi' print 'pustoi' else: # иначе выводится сам массив print t
Мне выводится сам массив, а ‘pustoi’ .
В numpy я только начала разбираться. Может как то иначе нужно записать или есть определенная функция определяющая пустой массив в numpy.
#2 Авг. 10, 2012 09:30:55
fata1ex От: Зарегистрирован: 2009-07-11 Сообщения: 732 Репутация: 52 Профиль Отправить e-mail
пустой массив
Можно также инициализировать numpy-массив с помощью обычного списка, наличие элементов в котором определяется совсем просто.
Отредактировано fata1ex (Авг. 10, 2012 09:34:20)
#3 Авг. 10, 2012 09:32:01
FishHook От: Зарегистрирован: 2011-01-08 Сообщения: 8312 Репутация: 568 Профиль Отправить e-mail
пустой массив
import numpy t = numpy.array([]) if t: print 'Not Empty' else: print "Empty"
#4 Авг. 10, 2012 09:35:35
fata1ex От: Зарегистрирован: 2009-07-11 Сообщения: 732 Репутация: 52 Профиль Отправить e-mail
пустой массив
import numpy t = numpy.array([]) if t: print 'Not Empty' else: print "Empty"
>>> import numpy as np >>> t = np.array([1, 0]) >>> if t: . print 'Not Empty' . else: . print 'Empty' . . Traceback (most recent call last): File "", line 1, in module> ValueError: The truth value of an array with more than one element is ambiguous. Us e a.any() or a.all()
#5 Авг. 10, 2012 09:45:38
FishHook От: Зарегистрирован: 2011-01-08 Сообщения: 8312 Репутация: 568 Профиль Отправить e-mail
пустой массив
Странная логика. Ну тогда так
import numpy t = numpy.array([1,2,3]) if len(t): print 'Not Empty' else: print "Empty"
#6 Авг. 10, 2012 12:12:33
fata1ex От: Зарегистрирован: 2009-07-11 Сообщения: 732 Репутация: 52 Профиль Отправить e-mail
пустой массив
FishHook, t.size же!
![]()
- Начало
- » Python для новичков
- » пустой массив