Евгений Колчин
-
Legantmar ответил(а) на тему Арматура переменной длины в форуме Задать вопрос 8 лет назад
нужен бы файлик rvt
-
Khasan Mamaev voted up to a reply by Valery in the topic Сортировка как в Revit 8 лет назад
-
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([("").join([i for i in p if i.isalpha()]) for p in [i.split(".")[0] for i in IN[0]]], [int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1,2)))[3][Читать далее] -
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1)))[2]p.s. не зависит от количества букв в префиксе
-
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
это конечно уже треш, но в одну строку ))
from operator import itemgetter
OUT = zip(*sorted(zip([int(("").join([i for i in p if i.isdigit()])) for p in [i.split(".")[0] for i in IN[0]]], [int(i.split(".")[1]) for i in IN[0]], IN[0]), key=itemgetter(0,1)))[2] -
Khasan Mamaev ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
И друзья, обратите внимание на эту конструкцию
list(iter(digs(i)))
это получение удобоваримого списка из любого итерируемого объекта. Зачастую при работе с объектами Ревит(импорт геометрии, импорт параметров) приходят интересные объекты, которые вроде являются списками, но не всегда обрабатываются обычными методами списков, бывает что обрабатыв…[Читать далее] -
Khasan Mamaev ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
И друзья, обратите внимание на эту конструкцию
list(iter(digs(i)))
это получение удобоваримого списка из любого итерируемого объекта. Зачастую при работе с объектами Ревит(импорт геометрии, импорт параметров) приходят интересные объекты, которые вроде являются списками, но не всегда обрабатываются обычными методами списков, бывает что обрабатыв…[Читать далее] -
Khasan Mamaev ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
Питон сила) ну ты все же допиши код, чтобы количество символов в префиксе не имело значение, а то это мина замедленного действия, кто то обязательно пропустит мимо ушей твою ремарку.
-
Khasan Mamaev voted up to a reply by Valery in the topic Сортировка как в Revit 8 лет назад
-
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
не знал, что sorted может сразу по 2 параметрам сортировать..
тогда поправил свой код (уложился в 1 строку, не считая import):
from operator import itemgetter
OUT = zip(*sorted(zip([int(i.split(".")[0][1:]) for i in list1], [int(i.split(".")[1]) for i in list1], list1), key=itemgetter(0,1)))[2]p.s. Если префикс (в данном примере буква “В”) буде…[Читать далее]
-
Legantmar ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
не знал, что sorted может сразу по 2 параметрам сортировать..
тогда поправил свой код (уложился в 1 строку, не считая import):
from operator import itemgetter
OUT = zip(*sorted(zip([int(i.split(".")[0][1:]) for i in list1], [int(i.split(".")[1]) for i in list1], list1), key=itemgetter(0,1)))[2]
p.s. Если префикс (в данном примере буква “В”) будет…[Читать далее] -
Legantmar voted up to a reply by Valery in the topic Сортировка как в Revit 8 лет назад
-
Khasan Mamaev ответил(а) на тему Сортировка как в Revit в форуме Задать вопрос 8 лет назад
я тоже внесу свою копеечку, в моем коде не нужно ничего менять в зависимости от префикса
-
Khasan Mamaev voted up to a reply by Valery in the topic Сортировка как в Revit 8 лет назад
- Загрузить еще