Страница 1 из 1

Как получить таблицу свойств?

Добавлено: 17 мар 2021, 16:07
Herber
У меня есть .lyrx файлы. Хочу оттуда вытянуть таблицу аттрибутов через питон. Пробую данным способом, но поля пустые.

Код: Выделить всё

import arcpy
import os

lyrFile = arcpy.mp.LayerFile( os.path.join(path,"Счётчики.lyrx"))
for lyr in lyrFile.listLayers():
    print(lyr.name)
    desc = arcpy.Describe(lyr)
    try:
        fields =  desc.fields
        for field in fields:
            print(field)
    except:
        pass

Re: Как получить таблицу свойств?

Добавлено: 17 мар 2021, 16:28
Ivor
Так lyr (и lyrx тож) не содержат данные, а только оформление и ссылку на собственно данные. Сами то файлы данных (shp аль база геоданных) у вас имеется и лежит там, куда указывает lyrx?

Re: Как получить таблицу свойств?

Добавлено: 17 мар 2021, 17:01
Herber
Есть
.tbx
.gdb (папка)
.aprx

Re: Как получить таблицу свойств?

Добавлено: 18 мар 2021, 09:52
Herber

Код: Выделить всё

desc = arcpy.Describe('Счетчики')
for f in desc.fields:
    print(f.name)
Я получил все заголовки таблиц. А вот само содержимое как получить?

OID
Shape
Name
FolderPath
SymbolID
AltMode
Base
TimeSpan
TimeStamp
BeginTime
EndTime
Snippet
PopupInfo
HasLabel
LabelID

Re: Как получить таблицу свойств?

Добавлено: 18 мар 2021, 10:09
Ivor
Завести курсор и итерацией по нему. Сейчас вот прямо код не воспроизведу, но он в помощи практически сразу ищется

Re: Как получить таблицу свойств?

Добавлено: 18 мар 2021, 10:38
Skywalker
Попробуйте таким образом:

Код: Выделить всё

import arcpy
fgdb = 'C:/geodatabase.gdb/table'
field = 'field1'
cursor = arcpy.SearchCursor(fgdb)
for row in cursor:
    print(row.getValue(field))