2010-08-17 4 views

답변

2

당신은 완전한 방법 중 하나에서 파일의 경로를 지정할 수 있습니다 : 당신이 그것을 지정 정확히 취해 있기 때문에 또한 "절대"로 알려진, (예를 들어 'C /wher/ever/the.txt') , 또는 "친척"이라고도 알려진 부분적인 것 (예 : "the.txt"또는 "ever/the.txt"또는 "../ever/the.txt"등) 을 프로세스의 현재 작업 디렉토리에 추가하십시오. 작업 디렉토리를 모르는 경우 일반적으로 절대 경로를 찾아 지정하는 것이 가장 간단합니다.

그래서 파일의 위치를 ​​확인하고 (예 : c:/wher/ever) 문제의 파일을 열 때 절대 경로 (다른 답변에서 방금 설명한대로 Windows 스타일 백 슬래시 대신 "rightside slashes"와 함께 사용)를 사용하십시오 .

+0

Psh, 더 많은 Windows hate :(여전히'r'C : \ paths''가 마음에 들지만'r'C : \ endsinbackslash \ '는 어떻게 실패 할까 싫어한다. –

+0

@Nick, no hate! "C :/tip/top"을 파일 경로로 받아들입니다. (사실 그것은 파이썬에서 작동합니다 : 기본 C 컴파일러에 위임하여!) : C는 "원시 리터럴 형식"도 아닙니다. "\ t"은 항상 탭 문자이고 "C : \\ tip \\ top"만이 유일한 대안입니다 (물론 파이썬에서도 작동하지만, 라이드 사이드 업 슬래시는 픽셀과 스크린 공간을 절약하고 코드를 선언하고 모든 플랫폼에서 당신은 좋은 습관을 형성하고 항상 그것을 사용할 수 있습니다 - 모든 pluses, 그래서, 왜 안되죠?!) –

+0

나는 습관의 힘 (예, 나쁜 이유)을 모르겠다. 나는 한 번 생각한다. 내 코드에 버그가 있었기 때문에 여러가지 변화를 만들었습니다. 버그는 사라져서 잠재 의식 속에 묻혀 버렸습니다 : P –

2

name 속성에 액세스하십시오.

fh = open('spam.txt') 
print fh.name 
+0

나를 위해 작동하지 않습니다. 파일이 존재하지 않는다는 오류 메시지가 나타납니다. 어쩌면 .txt 문서를 적절한 위치에 저장하지 않을 수 있습니까? 또한 파일 이름이 일반적으로 디렉토리와 같다고 생각했습니다. /music/_singles/kairo.mp3 –

+1

새 파일에 쓰려면 append 또는 write를 사용해야합니다. 파일을 생성 (그리고 비우기) 위해 open ('spam.txt', 'w')'또는 파일을 생성 (그리고 존재한다면 첨부)하기 위해'open ('spam.txt', 'a')' . – Wolph

관련 문제