Моя программа имеет следующую структуру:Append путь к программе питона
|---main.py
|---home
|----read.csv
|----importer.py
main.py имеет следующий код:
from home import importer as imp
imp.load()
importer.py имеет следующий код:
import pandas as pd
import sys
def load():
arch = pd.read_csv("read.csv")
print arch
if __name__ == '__main__':
load()
и read.csv - любое csv, это, например,
h,k
3,4
5,6
Когда я запустил importer.py, он работает нормально, и это потому, что read.csv находится в текущем пути.
Но когда я пытаюсь запустить main.py, он выдает исключение, потому что он не может найти read.csv. Это потому, что read.csv не находится в текущем пути.
Мне нужно, чтобы он работал в обоих режимах, и решение было бы добавить домашний путь к основной программе python.
Я попытался сделать это sys.path.append (os.path.join (os.getcwd(), "home")) , но он не работал.
Любая идея?
вы должны использовать абсолютные пути не относительные пути. я предлагаю, чтобы «load» принимал параметр пути и каждый раз проходил абсолютный путь. –
У вас есть '__init __. Py' в вашем домашнем каталоге? – DataHerder
Да, у меня __init__.py в доме –