Вот что получилось у меня, но мне кажется это не самое чистое решение, в добавок я не знаю как оно будет работать с несколькими множествами ( в конечном счете мне нужно именно это) Пример: {[1,2,3,4,5,6,8,9,10],[6,7,8,12,13,14]}
import clr
clr.AddReference(‘ProtoGeometry’)
from Autodesk.DesignScript.Geometry import *
#Введенные в этом узле данные сохраняется в виде списка в переменных IN.
dataEnteringNode = IN
restart = IN[0]
sts = IN[1]
tol = IN[2]
def short(st):
uniq = []
while len(st) > 1:
fff=st[0]
uniq.append(fff)
if st[1]-st[0]==tol:
uniq.append(“-“)
while st[1]-st[0]==tol:
st.pop(0)
else:
first = st.pop(0)
second = st[0]
uniq.append(first)
uniq.append(“;”)
else:
uniq.append(“;”)
else:
fffs=st[0]
uniq.append(fffs)
return uniq
#Назначьте вывод переменной OUT.
OUT = short(sts)