这行代码返回unicode中的文件名和路径,我不能使用它。如何只获取文件名和字符串?
代码:
logfile = QFileDialog.getOpenFileNames(None, caption, directory, filter_mask)[0]
print 'Selected Log file is :', str(logfile)
print logfile
输出:
Selected Log file is : [u'C:\Temp\!!!readme.txt']
[u'C:\Temp\!!!readme.txt']
帮助我需要日志文件为"C:\Temp\readme.txt"。我该怎么做?
看起来QFileDialog.getOpenFileNames
返回一个字符串列表,所以您只需要获得第一个元素:
>>> logFile = [u'C:\Temp\!!!readme.txt']
>>> f = logFile[0]
>>> f
u'C:\Temp\!!!readme.txt'
CCD_ 2表示这是一个unicode字符串。如果你真的不想要unicode,只需使用str
:
>>> str(f)
'C:\Temp\!!!readme.txt'
编辑:根据单据返回一个QString列表。因此,您不能使用像.first()
这样的QString方法。
伊迪丝2:哇,我没看到你的[0]
。对我来说一定太晚了……所以,这很奇怪。也许(QFileDialog.getOpenFileNames(None, caption, directory, filter_mask))[0]
?