2 回答

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊
Qt 跨平臺(tái)解決方案是使用QDesktopServices::openUrl()
:
import os
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
app = QtWidgets.QApplication(sys.argv)
path = "C:/Users"
fullpath = os.path.realpath(path)
if not QtGui.QDesktopServices.openUrl(QtCore.QUrl.fromLocalFile(fullpath)):
? ? print("failed")

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊
我設(shè)法使用 QProcess 在特定路徑上打開資源管理器,而無需附加模塊(例如網(wǎng)絡(luò)瀏覽器)。我只需要平臺(tái)模塊來確定程序正在運(yùn)行哪個(gè)平臺(tái),就像這樣
self.path = os.path.abspath(os.path.dirname(sys.argv[0]))
self.pathOutput = os.path.join(self.path, "output")
def open_explorer(self):
self._process = QtCore.QProcess(self)
if platform.system() == "Windows":
self._process.start("explorer",[os.path.realpath(self.pathOutput)])
elif platform.system() == "Darwin":
self._process.start("open",[os.path.realpath(self.pathOutput)])
添加回答
舉報(bào)