YJ_Scribbles

[Python]폴더에 있는 파일 불러오기 / 다른 폴더에 파일 저장 / 확장자 없애기 본문

프로그래밍/Python

[Python]폴더에 있는 파일 불러오기 / 다른 폴더에 파일 저장 / 확장자 없애기

오뀨기 2023. 3. 16. 13:53

찾으면서 짜는 코드 정리하기 / 정답아님 / 쉬운방법있으면 알려주세요..

 

- 폴더에 있는 파일 다 불러와서 리스트로 저장하기

- 확장자 잘라내고 이름만 저장하기(나중에 폴더명 그대로 저장하려고)

 


* 항상 적는 코드

# 항상 불러오는 import

import os
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

 

 


* 폴더에 있는 파일 불러와서 리스트로 저장

# path : 파일 경로 저장 변수
path = "폴더경로작성"

# file_list : 폴더 내의 파일들을 리스트로 불러와서 저장
file_list = os.listdir(path)

# 확인차 출력
print ("file_list: {}".format(file_list))

 

 


* 파일명 확장자 지우기

# search : 지우고자 하는 확장자 저장 변수
search = '.txt'

# enumerate : 인덱스(index)와 원소를 동시에 접근하면서 루프돌릴 수 있는 변수
for abc, word in enumerate(file_list):
	if search in word :
    	file_list[abc] = word.strip(search)

# 나중에 사용하려고 file_list의 갯수 확인
len(file_list)

 

 

 


* 다른 폴더에 저장하기

rep = 0
for i in range(len(file_list)):
    file_path = '불러온 파일 경로'
    # file_list에는 확장자가 없어서 확장자 추가해줌
    df = pd.read_csv(file_path + '/'+ file_list[rep] + '.txt', sep=';', skiprows = 8, encoding='cp949')
    
    result_1 = df[['원하는', '값들만', '추출하면서', '다른', '확장자로', '저장하려고', '사용']]
    
    save_path = '저장할 폴더 경로'
    result_1.to_csv(path_or_buf= save_path + "/" + file_list[rep] + ".csv", index = False)
    
    rep+=1

 

 

분명히 더 쉽게 하는 방법이 있을 것 같다.

근데 난 아무리 찾아도 안나와서 이렇게 코드를 작성했다.

사용하는데 전혀 문제 없다.

아주 잘 사용하는 코드 중 하나