Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 22, 2014 09:02:09

Senhion
Зарегистрирован: 2012-08-13
Сообщения: 37
Репутация: +  0  -
Профиль   Отправить e-mail  

Сортировка по свойству объекта

День добрый.
Господа, подскажите как правильнее сделать сортировку по свойству объекта?

т.е.

from numpy import *
class Obj1():
    def __init__(self):
        self.a = random.rand()
herd = []
for x in range(5000):
    herd.append(Obj1())

и как теперь расположить объекты в списке herd по возрастанию свойства .a ?

Отредактировано Senhion (Янв. 22, 2014 09:02:55)

Офлайн

#2 Янв. 22, 2014 10:12:13

wiygn
Зарегистрирован: 2012-08-19
Сообщения: 52
Репутация: +  2  -
Профиль   Отправить e-mail  

Сортировка по свойству объекта

Можете конкретнее описать вашу задачу? Для чего и как в дальнейшем будет использоваться этот список?

Офлайн

#3 Янв. 22, 2014 10:54:15

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2843
Репутация: +  186  -
Профиль   Отправить e-mail  

Сортировка по свойству объекта

sorted(herd, key=lambda x: x.a)



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Янв. 22, 2014 10:57:52

Senhion
Зарегистрирован: 2012-08-13
Сообщения: 37
Репутация: +  0  -
Профиль   Отправить e-mail  

Сортировка по свойству объекта

в дальнейшем будут использоваться первые N с наибольшими или наименьшими .a
или возможно список не лучшее место для хранения объектов и подобной сортировки? но количество объектов заранее неизвестно

Офлайн

#5 Янв. 22, 2014 11:17:21

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Сортировка по свойству объекта

Оставляй список, не принципиально

Офлайн

#6 Янв. 22, 2014 14:04:18

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Сортировка по свойству объекта

Посмотрите ещё модуль heapq в батарейках.

..bw



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version