커뮤니티를 찾아보니 폴더에 있는 사진이 아닌 파일 삭제, 폴더에 있는 사진 삭제 등의 문제를 해결할 때 이 기능을 구현하기 위해 많은 분들이 코드를 많이 작성하시는 것을 발견했습니다. 시간, 몇 줄까지 할 수 있나요? 코드로 문제를 해결할 때 왜 그렇게 많은 코드를 작성해야 합니까?
해결된 문제는 폴더에서 접미사 유형이 동일한 파일을 삭제하는 것입니다. 예를 들어
str.endswith(suffix[, start[, end]])
Function 사용법: endwith() 메소드를 사용하여 폴더의 모든 JPG 파일 또는 PNG 파일을 삭제합니다. string end with 접미사의 끝을 지정하고, 지정된 접미사로 끝나면 True를 반환하고, 그렇지 않으면 False를 반환합니다. 선택적 매개변수 "start" 및 "end"는 검색된 문자열의 시작 및 끝 위치입니다.
suffix – 이 매개변수는 문자열이거나 요소일 수 있습니다.
start – 문자열의 시작 위치입니다.
end – 문자의 끝 위치입니다.
참고: 반환 값은 부울 유형입니다
이제 TXT 파일(접미사: .txt), CSV 파일(접미사: .csv) 및 PNG 파일(접미사: .png)이 있습니다. PNG 파일을 삭제하고 TXT 및 CSV 파일만 보관합니다. 코드는 다음과 같습니다.
import os file=os.listdir(r'C:\Users\ZFG\Desktop\test') for i in file: if i.endswith('.png'): os.remove(r'C:\Users\ZFG\Desktop\test/'+i)#i保存的只是文件夹中的一个相对路径,绝对路径还需要加上文件夹的路径+‘/'
최종 결과가 표시됩니다. 첫 번째 사진은 삭제 전 사진이고 두 번째 사진은 삭제 후 효과 사진입니다.
참고: 폴더가 필요한 경우 파일이 너무 많으면 이 간단한 코드 줄이 놀라운 효과를 발휘할 수 있습니다!
# 删除文件夹下面的图片 #先导入所需的包 import os #指定路径 path = '/content/drive/My Drive' filenames = os.listdir(path) for filename in filenames: print(filename) #判断是否是文件而非文件夹 if(os.path.isfile(filename)): # print('it is a file') #判断文件后缀名是否是‘.jpg' if(os.path.splitext(filename)[1] == '.jpg'): #执行删除 os.remove(filename)
위 내용은 Python의 폴더에서 동일한 접미사 유형을 가진 파일을 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!