pyqt:选择文件(python)后如何打印文件名?

问题描述 投票:-1回答:2

我已经创建FileDialog来浏览文件。选择文件后,我只想获取文件名!但是我总是得到完整的路径..这是我的代码:

self.pushButton_2.clicked.connect(self.pushButton_2_handler)

def pushButton_2_handler (self):
    self.open_dialog_box()

def open_dialog_box(self):
    filename=QFileDialog.getOpenFileName()
    print(filename[0])
python pyqt
2个回答
0
投票

您可以使用pathlib模块:

>>> from pathlib import Path
>>> path = Path("C:/users/foobar/desktop/file.txt")
>>> path.name
'file.txt'
>>> path.stem
'file'
>>> path.suffix
'.txt'
>>> 

-1
投票

很好的文件路径就像blah\blah\blah\filename一样,所以您要做的就是循环返回,直到找到\并使用它。

for index in range(len(filename[0])-1, 0,-1):
    if filename[0][index] == "\\": 
        filename[0] = filename[0][index+1:]
        break

您也可以按\分割字符串并使用最后一个类似的字符

filename[0] = filename[0].split("\\")[-1]

或使用os

import os
filename[0] = os.path.basename(filename[0])
© www.soinside.com 2019 - 2024. All rights reserved.