如果我有一个打开的文件,是否有os
调用将完整路径作为字符串?
f = open('/Users/Desktop/febROSTER2012.xls')
从f
开始,我将如何获得"/Users/Desktop/febROSTER2012.xls"
?
答案 0 :(得分:115)
此处的关键是name
对象的f
属性,表示打开的文件。你得到它:
>>> f = open('/Users/Desktop/febROSTER2012.xls')
>>> f.name
'/Users/Desktop/febROSTER2012.xls'
有帮助吗?
答案 1 :(得分:67)
我有完全相同的问题。如果使用相对路径,则os.path.dirname(path)将仅返回相对路径。 os.path.realpath 可以解决问题:
>>> import os
>>> f = open('file.txt')
>>> os.path.realpath(f.name)
答案 2 :(得分:11)
如果您只是想获取目录名称而不需要随附文件名,那么您可以使用os
Python模块以下列传统方式执行此操作。
>>> import os
>>> f = open('/Users/Desktop/febROSTER2012.xls')
>>> os.path.dirname(f.name)
>>> '/Users/Desktop/'
这样你就可以掌握目录结构。
答案 3 :(得分:2)
你也可以这样做。
filepath = os.path.abspath(f.name)