从Python中的打开文件获取path

如果我有一个打开的文件,是否有一个os调用来获取完整的path作为一个string?

 f = open('/Users/Desktop/febROSTER2012.xls') 

f ,我将如何得到"/Users/Desktop/febROSTER2012.xls"

这里的关键是代表打开文件的f对象的name属性。 你这样做:

 >>> f = open('/Users/Desktop/febROSTER2012.xls') >>> f.name '/Users/Desktop/febROSTER2012.xls' 

它有帮助吗?

我有完全相同的问题。 如果你使用的是相对path,os.path.dirname(path)只会返回相对path。 os.path.realpath的窍门是:

 >>> import os >>> f = open('file.txt') >>> os.path.realpath(f.name) 

如果你只是想获得目录名称,而不需要它的文件名,那么你可以用下面的常规方式使用os Python模块来完成。

 >>> import os >>> f = open('/Users/Desktop/febROSTER2012.xls') >>> os.path.dirname(f.name) >>> '/Users/Desktop/' 

这样你可以得到目录结构。