파이썬 isdir 데이터 처리 관련

조회수 1215회

isdir 사용중에 궁금한 것이 생겼습니다.


# 검사할 디렉토리를 입력 받아, 프로그램 루틴에 넘겨줌
# 넘기는 부분은 아직 설정하지 않음.
# 입력받은 디렉토리 확인 명령어 (os.path.isdir)
def DS(dir):
    dirS = (str(raw_input("Select Your Directory which you want Scan(e.x. C ) : ")))
    dirE = os.path.isdir(str(dirS)):
        if dirE == True:
            print("Ready for Scan Drive: ", dirS)
        else:
            print("It is not Drive or your system doesn't have ", dirS, "Drive.")

위에 str(raw_input()) 부분에 받은 드라이브 데이터를 dirS라고 칭했습니다. 그리고 밑에 입력된 dir이 존재하는 지 확일을 하여 IF문과 ELSE문으로 처리했습니다.

그런데,

dirE = os.path.iddir(str(dirS))

라고 입력하니 당연하게도 오류가 뜨더군요.

dirS에서 입력받은 값을 isdir로 옮기려면 어떻게 해야되나요?? T.T

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • os.path.isdir은 iterable하지 않기 때문에

    dirE = os.path.isdir(dirS):와 같이 콜론을 쓸 수 없고요.

    dirE = os.path.isdir(dirS)
     if dirE == True:
        print("Ready for Scan Drive: ", dirS)
    else:
        print("It is not Drive or your system doesn't have ", dirS, "Drive.")
    

    이렇게 콜론을 제거하고 밑에 코드에 들여쓰기를 한칸씩 당기면 정상 작동할것 같습니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)