#python-3.x #reverse #nonetype
#python-3.x #обратный #нетип
Вопрос:
кто-нибудь может объяснить, почему эта ошибка показана в приведенном ниже коде?
if __name__ == '__main__':
a = [5, 6, 2, 7, 9]
a.sort().reverse()
print(a)
показанная ошибка приведена ниже:
File "first.py", line 3, in <module>
a.sort().reverse()
AttributeError: 'NoneType' object has no attribute 'reverse'
Комментарии:
1. Поскольку
sort
возвращаетNone
, он сортирует список на месте . Стандартная библиотека Python обычно не подходит для плавных интерфейсов.
Ответ №1:
Сортировка возвращает None
. Он на месте. Вы можете сделать это в два этапа, как показано в другом ответе, или передать обратный аргумент для сортировки.
if __name__ == '__main__':
a = [5, 6, 2, 7, 9]
a.sort(reverse=True)