ответ был уже на этом форуме (пример скрипта на скрине)….Теперь вопрос как отсортировать список (под List.UniqueItems) чтобы вначале подсписков шло помещение, затем его номер и далее остальные элементы…
Думаю надо что-то добавить после:
for i in IN[0]:
name = UnwrapElement(i).Category.Name
if name == “Помещения”:
{ЗДЕСЬ УСЛОВИЕ: ТО ПЕРЕМЕСТИТЬ В НАЧАЛО СПИСКА}
Ну а как еще переместить цифру (номер помещения) на второе место даже не знаю..
Использую динамо 1.3
Все ноды были установлены
за исключением Нод от Алексея Лобанова «From List To Strings With Lines» . Я как понимаю , это просто набор нодов
Вроде бы все. Помогите пожалуйста , диплом надо доделать ;)))
в код блоке ответа не знаю (сам сталкивался с подобной ситуацией)
а в питоне примерно так:
IN0 = [[1,2,3],[4,5,6]]
list1 = []
for i in IN0:
list1.append(i[1]) # где 1 – номер нужного элемента в каждом подсписке
OUT = list1
на выходе будут 1-ые элементы каждого подсписка (т.е. 2 и 5)
first, last, sublist = IN[0], IN[1], []
for i,k in zip(first, last):
if i != k:
sublist.append(str(i)+"-"+str(k))
else:
sublist.append(str(i))
OUT="; ".join(sublist)
В первом случае SortByKey сработал верно, отсортировав один список по ключам из второго списка (в списке ключей наименьшее число 0, оно под индексом [2], в главном списке под этим индексом число 276, значит оно выводится первым; следующее число из списка ключей 1, оно под индексом [0], что соответствует числу 488 с таким же индексом, значит оно второе и т. д.).
А что требуется-то в итоге? Для того, чтобы просто отсортировать список чисел, достаточно подать его на нод List.Sort.