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 ?

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)
  • 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) Commented Aug 31, 2014 at 8:25
  • @Geog Luke is correct. os.path.dirname() extracts the workspace out of the full path.
    – radouxju
    Commented Aug 31, 2014 at 8:53
  • @Geog Use os.path.dirname twice. See edit.
    – user2856
    Commented Aug 31, 2014 at 8:58
  • You can also try using the path property of the Describe object: stackoverflow.com/a/36905906/2457991
    – Adam
    Commented Apr 28, 2016 at 5:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.