2010-08-07 3 views
4

사용자가 자신의 사용자 지정 파일 디렉토리를 사용할 때 파일의 이름을 바꾸는 프로그램을 작성하려고합니다. 저는 매우 초기 단계에 있습니다. 그리고 이것은 OS 및 glob 명령을 사용하여 처음입니다. 내 코드는 다음과 같습니다. 그러나 내가 그것을 실행하려했을 때 결과는 빈 목록이었다. glob 명령에 파일 루트 디렉토리를 직접 입력 해 보았습니다. 어떻게 든 작동하지만, 결과는 내가 원한 것이 아닙니다.glob()를 사용하여 사용자 지정 디렉토리에있는 파일 목록 가져 오기

당신이 도와 주길 바랍니다. 감사합니다. . 당신이 함수 내에서 원하는 모든 것을 들여 있는지 확인해야하므로

 
import os, glob 
def fileDirectory(): 
    #Asks the user for a file root directory 
    fileroot = raw_input("Please input the file root directory \n\n")

#Returns a list with all the files inside the file root directory filelist = glob.glob(fileroot) print filelist

fileDirectory는()

답변

2

파이썬은, 공백 문자를 구분합니다.

Stackoverflow는 코드에 대해 들여 쓰기 요구 사항이 있으므로 코드에 들여 쓰기가 어떤 것인지 확실하게 알 수 없습니다. 당신이 뭘 하려는지 것으로 보인다 디렉토리를 나열하지 않습니다 -

import os, glob 
def fileDirectory(): 
    #Asks the user for a file root directory 
    fileroot = raw_input("Please input the file root directory \n\n") 

    #Returns a list with all the files inside the file root directory 
    filelist = glob.glob(fileroot) 
    print filelist 
fileDirectory() 

다음 일은

는 글로브는 글로브의 결과를 반환합니다.

os.listdir 또는 os.walk을 원하거나 실제로 디렉토리가 아닌 glob 표현식을 요구해야합니다.

마지막으로 raw_input을 사용하면 제거해야 할 여분의 공백을 줄 수 있습니다. 어떤 fileroot인지 확인하십시오.

각 기능을 개별적으로 조사 할 수 있도록 프로그램을 분할 할 수 있습니다.

+0

안녕하세요,하지만 list.dir을 사용하려고했을 때 "WindowsError : [오류 123], 파일 이름, 디렉토리 이름 또는 볼륨 레이블 구문이 잘못되었습니다. ''/*.* ', is 내 코드에 문제가 있습니까? – Tom

+0

glob에 입력 한 내용이 실제로 "/*.*"입니까? 나는 Windows에서 실행될 때 이것이 유효한 경로가 아닐 수도 있다고 생각합니다. –

+0

실제로 glob을 사용하는 것처럼 들립니다.이 경우 변수 이름과 주석은 오도 된 것입니다. –

관련 문제