从数据文件中读取

时间:2014-06-30 01:15:05

标签: python

我正在尝试从我的pyqt应用程序中包含的txt文件中读取。

我遇到的问题是os.path.dirname(__file__)正在返回查找数据文件的模块所在的目录,而不是main()所在的目录。在这种情况下,应用程序目录的子目录而不是应用程序目录。

有没有办法始终返回调用main()的目录?

那个或者我可以在main()中获取此文本文件的目录并以某种方式将其传递给Mainform()吗?

所有这一切的原因是因为我想将.txt放在与main.py相同的目录中,因此当我部署冻结的应用程序时,可以找到文本文件。 (在OSX和WIN上)

由于

1 个答案:

答案 0 :(得分:0)

这样的设置可能适合您:

<强> main.py

import other

def main():
    print other.get_data_files_dir()

main()

<强> other.py

import os
import sys

def get_data_files_dir():
    namespace = sys._getframe(1).f_globals  # caller's globals
    return os.path.dirname(namespace['__file__'])
相关问题