Я очень начинаю с Python. У меня электрическая сеть с большой таблицей атрибутов. Здесь я разместил лишь небольшую часть сети. Изображение сети дано ниже. Arcpy На изображении показана ошибка прерывистой функции по цвету
Я хочу сделать следующее:
- Это объекты ЛИНИЯ, где одна конечная вершина является начальной вершиной другой линии.
- Линии должны находиться рядом с одним и тем же значением поля q50. Он не должен быть дискретным.
- Если какая-либо строка дискретна, в поле состояния будет отображаться ЛОЖЬ. В противном случае это ИСТИНА.
Моя первая попытка:
Я сделал словарь
Dicts = {}
, чтобы я мог использовать его в L oop. Я не знаю, применимо это или нет.
import arcpy
arcpy.env.workspace = r"G:\1. DESCO\2. SND\DESCO_GIS.mdb"
Table = r"G:\1. DESCO\2. SND\DESCO_GIS.mdb\SNDLT"
Output = r"G:\1. DESCO\2. SND\DESCO_GIS.mdb\SNDLT_Disslove"
Dicts = {}
with arcpy.da.SearchCursor(Table, ["OID", "q50"]) as cursor:
for row in cursor:
key = row[0]
value = row [1]
if not key in Dicts:
Dicts[key] = [value]
upCur = arcpy.da.SearchCursor(Table, ["q50", "Status"])
for row in upCur:
Мои вторые попытки:
Я растворяю слой на основе поля q50.
arcpy.Dissolve_management(Table, Output, "q50", " ", " ", " ")
Мои ожидания вывод:
OID Shape_Length q50 Status
1 34.042799 KB_45 TRUE
2 29.433213 KB_45 TRUE
3 28.935468 KB_40 FALSE
4 28.098186 KB_45 TRUE
5 17.087751 KB_45 TRUE
6 24.486309 KB_30 TRUE
7 10.6042869 KB_30 TRUE
8 27.879100 KB_30 FALSE
9 30.116200 KB_40 TRUE
10 26.952097 KB_40 TRUE
11 30.398597 KB_40 TRUE
Я пробовал, но не могу определить прерывистые функции.