python - Loading data via a module and a text file in another directory -
i have directory structure:
main/ __init__.py foo/ __init__.py names.py names.pickle bar/ __init__.py my_module.py
names.py has code works names.pickle, including loading pickled data.
however, in my_module.py if do:
from main.foo import names
then run my_module.py main/bar, python complains me can't find names.pickle, presumably because looks inside main/bar/, not main/foo/.
what recommended way resolve this? temporarily change os.curdir?
you should use file location of names.py
locate names.pickle
from main.foo import names import os names_pickle = os.path.join(os.path.dirname(names.__file__), 'names.pickle')
each module has __file__
attribute tells located on file system.
Comments
Post a Comment