Linux application deployment
Alex Martelli
aleaxit at yahoo.com
Mon Sep 6 03:24:05 EDT 2004
Robert M. Emmons <RobMEmmons at cs.com> wrote:
...
> One thing I've always wonders was -- Is there a way for a python module
> to tell where it's file is located??? If you could do this it might
Piece of cake: the key part of this recipe is
def whereami(): return sys.modules[__name__].__file__
then you can os.path.abspath this filename string as you wish.
Here's a more complete example foo.py:
#!/usr/bin/env python
import sys, os
def whereami(): return os.path.abspath(sys.modules[__name__].__file__)
if __name__ == '__main__': print whereami()
Put this anywhere on your $PATH, chmod +x it, and try out what you see
by executing it as the main script from various locations... should work
pretty reliably.
> also be possible to have a python script reset sys.path based on it's
> own location.
Sure, that shouldn't be impossible.
Alex
More information about the Python-list
mailing list