如何使用Python将文件名与路径分开?
我使用PyQt4
而我的字符串不是Python字符串,但PyQt4.QtCore.QString
我可以这样做:
filename=my_path.split("/")[-1]
但我认为分隔符是特定于操作系统的,我也不能使用类似os.path.basename
的东西,因为它只适用于原始的python字符串,那么最好的选择是什么呢?
答案 0 :(得分:1)
您可以在使用前将QString
转换为Python str
。例如:
filename_str = unicode(my_path)
...然后使用标准的Python os
函数来获取文件名:
os.path.basename(filename_str)
或者,只需一步:
os.path.basename(unicode(my_path))
请注意,您可以使用newer PyQt4 API v2或使用PyQt5完全避免此问题。通过这些更新,PyQt函数可以在可能的情况下返回本机Python字符串(和其他变量),因此您无需转换即可使用它们。它使事情变得更加简单。