파이썬은 재귀 폴더 모두에게 파일 이름을 읽을 수 (하위 폴더 포함)

클래스와 여러 작업은 폴더 계층의 수와 학생들의 많은 파일의 수를 계산해야하기 때문에 학생들이 숙제의 수는 통계가 필요합니다.

첫 번째 단계는 모든 파일 이름을 읽을 수 있어야 분석이 전형적인 순환 과정 것을 발견

  1. 폴더로
  2. 파일 목록
  3. 모든 순환 목록
  4. 파일이 목록에 파일 이름에 저장되어있는 경우
  5. 당신은, 재귀 폴더를 입력하면 결과는 파일 이름의 목록으로 돌아갑니다 저장
  6. 생성 된 목록을 반환
1  임포트 OS
 2  
3  DEF check_file (FILE_PATH)
 4      os.chdir (FILE_PATH)
 (5)      인쇄 (os.path.abspath (os.curdir))
 6      all_file = os.listdir ()
 7 개      파일 = []
 8       F all_file :
 9          경우 os.path.isdir (F) :
 10              files.extend (check_file (FILE_PATH + " \\ ' + F))
 11              os.chdir (FILE_PATH)
 12          다른 :
 13              files.append (F)
(14)      반환 파일
 15  
16 file_list를 check_file = ( " D : \ FTP \ 손으로 조작 " )
코드보기

그 중, 다시 반환 할 때 경로가이 파일을 반환 할 것인지 주목해야한다

두 번째 단계는 치료가 매우 간단하다는 파일 이름 목록을 찾을 수 있습니다!

  1. 문자열을 생산
  2. 학교 번호 조회에 정규 표현식을 사용하여
  3. 결과를 직접 처리 EXCEL로 반입 또는 환상 사전 생성 할 수있다
# 저자 : 동 류 
수입 OS
 수입 반입 xlwt 

DEF check_file (FILE_PATH) 
    os.chdir (FILE_PATH) 
    인쇄 (os.path.abspath (os.curdir)) 
    all_file = os.listdir () 
    파일 = []
     에 대한 F all_file :
         경우 : os.path.isdir (F) 
            files.extend (check_file (FILE_PATH + ' \\ ' + F)) 
            os.chdir (FILE_PATH) 
        다른 사람 : 
            files.append (F) 
    반환 파일

file_list를 = check_file ( " C : \迅雷下载" ) 
 = xlwt.Workbook () 
시트 = book.add_sheet ( ' 文件名' ) 
내가 = 0
 에 대한 데이터 에서 : file_list에 
    sheet.write (I 0 데이터) 
    I + = 1 

book.save ( ' 文件名搜索.XLS ' ) 

(S) = '  ' .join (file_list를) 
res_1 = re.findall (R ' \ D \ D {8} \는 D ' , S)
 인쇄 (res_1)
코드보기

 

추천

출처www.cnblogs.com/nmucomputer/p/12002924.html