добавьте два списка, затем sort = None (?)
Второй список объединяет каждый элемент в списке, xs. Запустив код ниже, python дает мне «None»
xs = [12, 10, 32, 3, 66, 17, 42, 99, 20] a = [b**2 for b in xs] c = (a + xs).sort() print(c, end=', ')
Тот же список, но другой код –
xs = [12, 10, 32, 3, 66, 17, 42, 99, 20] a = [b**2 for b in xs] c = a + xs c.sort() print(c, end=', ')
… python дает мне мой список (c), все отсортированы. Я не понимаю. Или есть ли более питонический способ сделать это?
Благодаря!
- Javascript-подобный setInterval / clearInterval для Python
- Попытка воссоздать метод __str __ () в python
- Использование знака доллара в перечислении (pypeg)?
- Python 3: RuntimeWarning с numpy.power
- Шифровать файл с GPG в python 3 с подпроцессом
Вообще говоря, все, что работает на чем – то на месте, будет возвращать None
, по соглашению. (Однако это соглашение необязательно всегда somelist.sort()
). somelist.sort()
сортирует список на месте.
Если вы предпочитаете отсортированную копию , вы можете просто вызвать c = sorted(a + xs)
. sorted
работает с копией оригинала и, следовательно, возвращает копию.
Здесь есть более подробное объяснение: http://wiki.python.org/moin/HowTo/Sorting/
Вы используете выражения генератора и itertools для уменьшения объема временного хранилища, подобного этому
>>> import itertools >>> xs = [12, 10, 32, 3, 66, 17, 42, 99, 20] >>> a = (b**2 for b in xs) >>> c = sorted(itertools.chain(a, xs)) >>> c [3, 9, 10, 12, 17, 20, 32, 42, 66, 99, 100, 144, 289, 400, 1024, 1764, 4356, 9801]
- Запуск скрипта python для заданного пользователем времени?
- Удаление кнопок минимизации / увеличения в Tkinter
- может ли один скрипт python работать как с python 2.x, так и с python 3.x
- Python 2 и 3 совместимый метод для преобразования байтов в целое число
- Результат SQL Query в tkinter
- Списки и лямбда-выражения
- Поиск наибольшего простого делителя (возможна самая быстрая программа)
- «Class» vs «экземпляр класса» __get__ и __set__?
- python – почему список не изменяется?
- Каков наиболее эффективный способ увидеть, идентична ли любая из пяти строк?
- Ошибка Python SocketServer при подключении