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 ?


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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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