as614001 发表于 2020-7-7 19:15

python 生成exe路径问题

本帖最后由 as614001 于 2020-7-8 09:41 编辑

有个配置conf文件
生成了exe,打算根据exe路径获取配置文件,但是报错。
报错的大概意思是 在 C:\\临时目录 找不到vcp.conf
应该是路径问题导致的了。但是不懂怎么写


def getConfig(section, key):
    config = configparser.ConfigParser()
    path = os.path.dirname(os.path.abspath(__file__))+'/vcp.conf'
    config.read(path, encoding='utf-8')
    if not config.has_option(section=section,option=key):
      saveconfig(section=section,option=key,key=' ')
      config.read(path, encoding='utf-8')
    return config.get(section, key)
==============================后续更新
用了坛友反馈的,还是报错
os.path.split(os.path.realpath(__file__)) + '/vcp.conf'
os.path.dirname(os.path.realpath(__file__))) + '/vcp.conf'
报错数据一样的。
FileNotF oundError: No such file or directory: 'C: \Users\\ADMINI 1\ \AppData\\Local\\\\_MEI110842\ \jdmsg/vcp.conf

上述任何一个,在python中执行是没问题的,我是将其打包为exe,出现的路径问题。
绝对路径肯定不能用呀,exe肯定是乱丢的,只能用相对位置。



kesai 发表于 2020-7-7 19:21

本帖最后由 kesai 于 2020-7-7 19:24 编辑

path.dirname(path.realpath(__file__))试试

nulla2011 发表于 2020-7-7 19:51

路径用了中文?

q1230007 发表于 2020-7-7 20:32

path.dirname(path.realpath(__file__)) 大佬的这个对对

制冷设备 发表于 2020-7-7 21:23

path = os.path.split(os.path.realpath(__file__)) + '/vcp.conf'

pkni1230 发表于 2020-7-7 21:38

kesai 发表于 2020-7-7 19:21
path.dirname(path.realpath(__file__))试试

学习了。。。。

as614001 发表于 2020-7-8 09:30

制冷设备 发表于 2020-7-7 21:23
path = os.path.split(os.path.realpath(__file__)) + '/vcp.conf'

这个不行 我最开始用的就是这个{:1_889:}

as614001 发表于 2020-7-8 09:42

kesai 发表于 2020-7-7 19:21
path.dirname(path.realpath(__file__))试试

不行哈,是不是打包exe{:1_908:}

kesai 发表于 2020-7-8 10:11

as614001 发表于 2020-7-8 09:42
不行哈,是不是打包exe
我以前有个程序就是用的这个,可以的啊,用的pyinstaller打包的
页: [1]
查看完整版本: python 生成exe路径问题