Получить путь из открытого файла в Python


если у меня есть открытый файл, есть os вызов, чтобы получить полный путь в виде строки?

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

С f как бы мне сделать "/Users/Desktop/febROSTER2012.xls" ?

4 73

4 ответа:

ключевым моментом здесь является

У меня была точно такая же проблема. Если вы используете относительный путь ОС.путь.dirname (path) возвращает только относительный путь. ОС.путь.реального пути не работает:

>>> 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/'

таким образом, вы можете получить доступ к структуре каталогов.

вы можете получить его так же.

filepath = os.path.abspath(f.name)