How to set workspace from input Feature Class ? is there an attribute of the source GDB for a feature class ? some times the FC is in a dataset and some time it isn't, How can i get the path of source GDB for setting workspace when the input is dynamic ?
matt wilkie
28.3k35 gold badges150 silver badges286 bronze badges
asked Aug 31, 2014 at 8:15
1 Answer 1
Use the catalogPath
property of the Describe
object.
For example:
dirname = os.path.dirname(arcpy.Describe(feat_class).catalogPath)
desc = arcpy.Describe(dirname)
if hasattr(desc, "datasetType") and desc.datasetType=='FeatureDataset':
dirname = os.path.dirname(dirname)
answered Aug 31, 2014 at 8:20
-
the catalog path function gives the path with the dataset, for setting workspace i need the path to the GDB only (without the data set)Dror Har Gil– Dror Har Gil2014年08月31日 08:25:35 +00:00Commented Aug 31, 2014 at 8:25
-
@Geog Luke is correct. os.path.dirname() extracts the workspace out of the full path.radouxju– radouxju2014年08月31日 08:53:02 +00:00Commented Aug 31, 2014 at 8:53
-
@Geog Use
os.path.dirname
twice. See edit.user2856– user28562014年08月31日 08:58:37 +00:00Commented Aug 31, 2014 at 8:58 -
You can also try using the path property of the Describe object: stackoverflow.com/a/36905906/2457991Adam– Adam2016年04月28日 05:28:48 +00:00Commented Apr 28, 2016 at 5:28
lang-py