반응형
Python : 디렉토리에서 확장자가 .MP3 인 최신 파일 찾기
파이썬에서 특정 유형의 가장 최근에 수정 된 (여기서부터 '최신') 파일을 찾으려고합니다. 현재 최신 버전을 얻을 수 있지만 어떤 유형이든 상관 없습니다. 최신 MP3 파일 만 받고 싶습니다.
현재 나는 :
import os
newest = max(os.listdir('.'), key = os.path.getctime)
print newest
최신 MP3 파일 만 제공하도록 수정하는 방법이 있습니까?
glob.glob 사용 :
import os
import glob
newest = max(glob.iglob('*.[Mm][Pp]3'), key=os.path.getctime)
os를 가져오고 경로를 정의했다고 가정하면 다음과 같이 작동합니다.
dated_files = [(os.path.getmtime(fn), os.path.basename(fn))
for fn in os.listdir(path) if fn.lower().endswith('.mp3')]
dated_files.sort()
dated_files.reverse()
newest = dated_files[0][1]
print(newest)
이 사람을 시도해보십시오.
import os
print max([f for f in os.listdir('.') if f.lower().endswith('.mp3')], key=os.path.getctime)
여기에서 학습 목적으로 내 코드는 기본적으로 @Kevin Vincent와 동일하지만 간결하지는 않지만 읽고 이해하는 것이 좋습니다.
import datetime
import glob
import os
mp3Dir = "C:/mp3Dir/"
filesInmp3dir = os.listdir(mp3Dir)
datedFiles = []
for currentFile in filesInmp3dir:
if currentFile.lower().endswith('.mp3'):
currentFileCreationDateInSeconds = os.path.getmtime(mp3Dir + "/" + currentFile)
currentFileCreationDateDateObject = datetime.date.fromtimestamp(currentFileCreationDateInSeconds)
datedFiles.append([currentFileCreationDateDateObject, currentFile])
datedFiles.sort();
datedFiles.reverse();
print datedFiles
latest = datedFiles[0][1]
print "Latest file is: " + latest
for file in os.listdir(os.getcwd()):
if file.endswith(".mp3"):
print "",file
newest = max(file , key = os.path.getctime)
print "Recently modified Docs",newest
참조 URL : https://stackoverflow.com/questions/18279063/python-find-newest-file-with-mp3-extension-in-directory
반응형
'Programing' 카테고리의 다른 글
Spring MVC를 사용하여 생성 된 PDF 반환 (0) | 2020.12.30 |
---|---|
두 열 테이블에서 두 열에 걸쳐 하나를 만드는 방법은 무엇입니까? (0) | 2020.12.30 |
WPF 창에서 현재 포커스가있는 요소 / 컨트롤 가져 오기 (0) | 2020.12.30 |
C ++에서 안전한 물리 연산 입력 (0) | 2020.12.30 |
NodeList는 언제 라이브이고 언제 정적입니까? (0) | 2020.12.30 |