2013-03-05 4 views
55

파일 포인터가 있으면 파일 이름을 가져올 수 있습니까?파일 포인터에서 파일 이름 가져 오기

fp = open("C:\hello.txt") 

fp를 사용하여 "hello.txt"을 얻을 수 있습니까?

+6

정확히 이것은 * 파일 포인터 *가 아닙니다. 이것은 파이썬의'file' 타입의 인스턴스입니다. – mgilson

+14

Pro Tip : 파이썬 객체에서'dir()'을 사용하여 어떤 속성을 사용할 수 있는지 확인하십시오. 당신은 쉽게'name'을 쉽게 찾을 수있었습니다. :-) –

+10

@MartijnPieters : 또는'help (fp)'는 파일 형식과 메서드 및 데이터에 대한 모든 문서를 제공합니다. – eryksun

답변

79

fp.name을 통해 경로를 가져올 수 있습니다. 예 :

>>> f = open('foo/bar.txt') 
>>> f.name 
'foo/bar.txt' 

당신이 을 원하는 경우 os.path.basename을해야 할 수도 있습니다 만 파일 이름 : here (파이썬 2)

>>> import os 
>>> f = open('foo/bar.txt') 
>>> os.path.basename(f.name) 
'bar.txt' 

파일 객체 문서.

관련 문제