追加python程序

时间:2015-11-09 21:58:05

标签: python path tree python-import

我的程序有下一个结构:

|---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")) 但它确实有效。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

这有效

def load():
    filedir, _ = os.path.split(__file__)
    arch = pd.read_csv(os.path.join(filedir, 'read.csv'))
    print arch