как работает команда List.Sort() ?

Главная Форумы Python Помогите с питон кодом как работает команда List.Sort() ?

Просмотр 15 сообщений - с 1 по 15 (из 20 всего)
  • Автор
    Сообщения
  • #2267 Score: 0
    Legantmar
    Хранитель
    462 pts

    Есть аналогичный нод, который сортирует список.

    Как это повторить в питоне? через команду List.Sort()

    #2270 Score: 1
    Khasan Mamaev
    Хранитель
    186 pts

    OUT = sorted(IN[0])

    #2271 Score: 0
    Khasan Mamaev
    Хранитель
    186 pts

    или так
    a = IN[0]
    a.sort()
    OUT = a

    #2272 Score: 0
    Khasan Mamaev
    Хранитель
    186 pts

    sorted() выдает новый отсортированный список, a.sort() изменяет исходный список

    #2273 Score: 0
    Legantmar
    Хранитель
    462 pts

    Хасан, спасибо!

    “чтоб два раза не вставать”

    как отсортировать объекты по параметру, например получить список колонн отсортированных по координате X ?
    (В Excel есть какая то связь (link) между колонками и при сортировке одной из них, автоматически перестраиваются и другие колонки.)

    Как нечто подобное реализуется в Dynamo и в Python ?

    #2274 Score: 0
    Khasan Mamaev
    Хранитель
    186 pts

    готового решения не видел, но думаю написать код на питоне будет не трудно

    #2275 Score: 0
    Khasan Mamaev
    Хранитель
    186 pts

    Дай какой нибудь конкретный список, а то лень самому придумывать:)

    #2276 Score: 0
    Legantmar
    Хранитель
    462 pts
    #2280 Score: 2
    Dmitry_dronov
    Модератор
    50 pts

    Вот тут есть примеры сортировки: https://docs.python.org/3/howto/sorting.html
    Вот этот вариант подходит, Сортирует по третьему столбцу (с индексом 2):

    sorted(student_tuples, key=itemgetter(2))
    [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]

    Кроме того можно сортировать сразу по двум параметрам в зависимости от важности вначале по [1] а затем по [2] можно и наоборот:

    sorted(student_tuples, key=itemgetter(1,2))
    [('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]
    #2281 Score: 0
    Dmitry_dronov
    Модератор
    50 pts

    Чтобы создать тьюпл нужно воспользоваться функцией zip(list1,list2…)
    Вот хорошие примеры: ссылка

    #2282 Score: 1
    Legantmar
    Хранитель
    462 pts

    Дим, спасибо! разобрался..
    про zip я знаю, я не сталкивался с sorted (выкручивался более хитро)

    #2283 Score: 1
    Dmitry_dronov
    Модератор
    50 pts

    Ах да. чтобы итемгеттер заработал нужно нужно не забыть загрузить его модуль

    from operator import itemgetter

    #2284 Score: 1
    Khasan Mamaev
    Хранитель
    186 pts

    красота, я не успел расковырять задание Антона

    #2287 Score: 0
    Khasan Mamaev
    Хранитель
    186 pts

    Sort01.png

    #2288 Score: 1
    Legantmar
    Хранитель
    462 pts


    Сортировка по координате X

Просмотр 15 сообщений - с 1 по 15 (из 20 всего)
  • Для ответа в этой теме необходимо авторизоваться.