본문 바로가기
공부

파이썬 특정 파일 확장자 연산 두가지

by 심현주 2022. 11. 24.
반응형

 

 

실용성은 없는데

인터넷에서 복붙해가면서 기능구현되는 걸 보면 재밌어서 중간중간 만들어보게 된다.

 

원천세 신고파일 확장자 .01

 

특정 파일 확장자 이름복사

조건하 특정 파일 확장자 삭제

 

 

 

import os

import clipboard

PATH = r'C:/ersData'

file_list = os.listdir(PATH)

file_list_01 = [file for file in file_list if file.endswith(".01")]

 

 

for filename in file_list_01:

print (os.path.splitext(filename)[0])

 

 

if len(file_list_01) == 1:

print(len(file_list_01))

clipboard.copy(os.path.splitext(filename)[0])

 

else:

for file in file_list_01:

file_path = os.path.join("C:/ersData/", file)

os.remove(file_path)

 

 

Vscode 작성 Python 기반

 

import os , clipboard 가 무슨 의민진 모르겠지만

#include<iostream.h> 와 비슷한 것같다

 

import os

import clipboard

PATH = r'C:/ersData'

file_list = os.listdir(PATH)

file_list_01 = [file for file in file_list if file.endswith(".01")]

 

원천세 신고파일인 .01이 저장되는 기본폴더는 C드라이브 ersData 이기 때문에 PATH로 지정

lua언어에서 a= , b= 이러면서 정의하는것과 비슷한 기능으로보인다

file_list는 경로상 목록

도스를 사용한 세대라면 dir단어가 익숙하지 않을까.

특정 확장자 파일이름 복사 또는 삭제를 위함이므로

file_list_확장자 = file_list 상 특정 확장자로 끝나는 목록 정의후

 

 

for filename in file_list_01:

print (os.path.splitext(filename)[0])

 

file_list_01에서 파일이름을 뽑아내는데

확장자가 아닌 파일이름의 복사만을 위해 splitext()를 이용하였다

[0]칸은 파일이름 [1] 확장자라고 한다.

 

 

if len(file_list_01) == 1:

print(len(file_list_01))

clipboard.copy(os.path.splitext(filename)[0])

 

else:

for file in file_list_01:

file_path = os.path.join("C:/ersData/", file)

os.remove(file_path)

 

그리고 file_list_01 의 파일개수가 1이라면 클립보드에 파일이름을 복사하고

파일개수가 1이 아닌경우 삭제하려고 하였는데

file_list_01로는 오류가 뜨는것을 확인 할 수 있었다.

그냥 리스트로는 삭제가 안되는거 같아 찾아보니

경로를 잡아주게 필요한것 같아서

file_list_01안의 파일에

ersData 경로를 붙여 file_path로 정의후 remove

 

반응형

댓글