[python] Python에서 열린 파일에서 경로 가져 오기

열린 파일이있는 os경우 전체 경로를 문자열로 가져 오는 호출이 있습니까?

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

에서 f어떻게 얻을 수 "/Users/Desktop/febROSTER2012.xls"있습니까?



답변

여기서 핵심 은 열린 파일을 나타내는 객체 의 name속성입니다 f. 다음과 같이 얻을 수 있습니다.

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

도움이 되나요?


답변

나는 똑같은 문제가 있었다. 상대 경로를 사용하는 경우 os.path.dirname (path)는 상대 경로 만 반환합니다. os.path.realpath 는 트릭을 수행합니다.

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


답변

디렉토리 이름 만 얻고 파일 이름이 필요하지 않은 경우 osPython 모듈을 사용하여 다음과 같은 일반적인 방법으로 수행 할 수 있습니다 .

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

이렇게하면 디렉토리 구조를 파악할 수 있습니다.


답변

이것도 얻을 수 있습니다.

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


답변