【发布时间】:2015-06-30 12:44:32
【问题描述】:
我正在尝试打开一个目录对话框,其中包含写入 .ini 文件的默认目录。
.ini 文件如下所示:
defaultWorkingDirectory = "%%USERPROFILE%%\Documents\CAD\Working_Directory"
我写了一个函数来打开目录对话框:
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
import sys
from os.path import expanduser
import configparser
import itertools
import re
self.home = expanduser("~")
self.defaultPath = self.home + "\Documents\OptCAD\Working_Directory"
def openDirectoryDialog(self):
cfg = configparser.ConfigParser()
cfg.read_file(itertools.chain(['[global]'], open('C:\\Program Files (x86)\\CAD\\config.ini')))
print(cfg.items('global')) # It returns : [('defaultworkingdirectory', '"%USERPROFILE%\\Documents\\OptCAD\\Working_Directory"')]
cfgList = cfg.items('global')
wDirTuple = cfgList[(0)]
_, workingDir = wDirTuple
print(workingDir) # It returns : "%USERPROFILE%\Documents\OptCAD\Working_Directory"
self.directoryName = str(QFileDialog.getExistingDirectory(self, "Select Working Directory", workingDir, QFileDialog.ShowDirsOnly))
然后当我打开目录对话框时,默认目录不是好目录。
【问题讨论】:
标签: python python-3.x pyqt environment-variables pyqt5