check if directory is writable in a portable way
Tim Chase
python.list at tim.thechases.com
Tue Feb 28 06:34:59 EST 2012
On 02/28/12 04:07, Andrea Crotti wrote:
> How should I check if I can create files in a directory?
>
> So maybe the only solution that works is something like
> try:
> open(path.join('temp', 'w'))
> except OsError:
> return False
> else:
> os.remove(path.join('temp'))
> return True
It depends on the system & location. It's possible to set up
directories with permissions that allow you to create files but
not delete them, in which case you'd either (1) create the file
and possibly fail on subsequent tests because the file already
exists; or (2) litter the directory with tmpnam()-like results
that you were unable to delete.
It's ugly, I've encountered it, and haven't found a good
universal solution myself.
-tkc
More information about the Python-list
mailing list