Повеќе

Наведување класи на одлики во повеќе геодетабизи во папка со користење на ArcPy?

Наведување класи на одлики во повеќе геодетабизи во папка со користење на ArcPy?


Имам папка со бројни геодетабизи во неа. Во рамките на геодетабазите има класи на одлики. Би сакал да добијам список со класи на одлики во овие геодетабизи со помош на Питонска скрипта. Досега стигнав само што ги набројував геодетабазите. Дали некој има предлог за наведување на класи на одлики во геодетабазите?

Линијата за отпечатоци во мојата скрипта ми ги дава следниве резултати:

C:  излез  data.gdb C:  излез  otherdata.gdb C:  излез  Somethingelse.gdb

Сакам да генерирам список со класи на одлики во геодетабазите погоре. Подолу е моето сценарио досега.

увезете arcpy, os, sys од arcpy увезете env arcpy.env.workspace = "D:  излез" inWorkspace = arcpy.env.workspace workspaces = arcpy.ListWorkspaces ("*", "FileGDB") за ставка во работните простори: печати ставка # Овој дел ми ги дава изјавите за печатење што ги споделив погоре # fcList = arcpy.ListFeatureClasses () # Не го сфатив овој дел # Сакам да ги наведам класи на одлики во геодетабизата

Трикот што ви недостасува е да го направите секој gdb активен работен простор пред да ги наведете содржините:

за ставка во работните простори: печатење ставка env.workspace = ставка fcs = arcpy.ListFeatureClasses () за fc во fcs: печати " t", fc

Исто така, забележете дека ова ќе ги пропушти класите на одлики во збирките на податоци на функции, видете Наведување на сите класи на одлики во Базата на податоци на датотеки, вклучително и во рамките на датотеки со одлики? да се реши тоа.

Општо, ако користитерне треба да удвојувате сè (за полесно копирање и лепење од лентата за адреси на Windows Explorer итн.): на пр.r'D: излез '


Оваа скрипта ќе се занимава со какви било постојни збирки на податоци (барем во теорија - не сум ја тестирал). Истата општа идеја сепак, ако има групи на податоци за карактеристики, треба да го поставите вашиот работен директориум на таа база на податоци пред да ги наведете карактеристиките.

увезете arcpy dir = r'D:  output 'arcpy.env.workspace = dir gdbList = arcpy.ListWorkspaces (' * ',' FileGDB ') за gdb во gdbList: arcpy.env.workspace = gdb # - сменете го работниот директориум на секоја GDB во списокот со податоциList = arcpy.ListDatasets ('*', 'Feature') # - направи список со сите (доколку ги има) збирки на податоци што постојат во тековните GDB fcList = arcpy.ListFeatureClasses () # - направи список на сите одлики во тековната GDB (корен) за fc во fcList: печати arcpy.env.workspace, fc # - директориум за печатење, име на fc за базата на податоци во базата на податоци Листа: arcpy.env.workspace = збирка податоци # - сменете го работниот директориум во секоја база на податоци (доколку ги има) во списокот fcList = arcpy.ListFeatureClasses () # - направи список на сите одлики во тековната GDB (тековна база на податоци) за fc во fcList: печати arcpy.env.workspace, fc # - директориум за печатење, име на fc arcpy.env.workspace = gdb

Погледнете го видеото: Integrating Deep Learning with ArcGIS using Python