[Python] 표준 라이브러리 : os, glob, collections

Jimin_Note·6일 전
0

[Python]

목록 보기
39/40
post-thumbnail

1. os 모듈 - 운영체제와 상호작용

🔹 대표 기능

  • 디렉토리 생성/삭제
  • 파일 경로 제어 os.path
  • 현재경로 이동
  • 환경 변수 접근

✅ 자주 쓰는 함수들

import os

os.getcwd()  # 현재 작업 디렉토리
os.listdir('.') # 현재 폴더 파일 목록
os.mkidr('teset')  # 새 폴더 만들기
os.remove('test.txt') # 파일 삭제
os.path.join('folder','file.txt') # 경로 합치기
os.path.exists('파일경로') # 파일/폴더 존재 여부

📌 실전 예제

특정 폴더 안의 .txt파일들 전부 삭제 하기

import os

folder = './data'
for file in os.listdir(folder):
	if file.endswitch('.txt'):
    	os.remove(os.path.join(folder, file)

2. glob 모듈 - 파일 검색/패턴 매칭

🔹 대표기능

  • 파일명 패턴으로 파일 목록 찾기(와일드카드 *, ? 등 사용가능)

✅ 기본 사용법

import glob

files = glob.glob('*.py') # 현재 폴더의 모든 .py 파일
files = glob.glob('data/*.csv') # data 폴더 안의 .csv 파일들

📌 실전 예제

특정 폴더에 있는 .log파일을 모두 읽어서 출력

import glob

for filename in glob.glob('./logs/*.log'):
	with open(filename) as f:
    	print(f.read())

3. collections 모듈 - 자료구조

🔹 자주 쓰는 클래스들

클래스설명
Counter요소 개수 세기 ( like 딕셔너리)
defaultdict기본값이 있는 딕셔너리
deque양쪽에서 삽입/삭제 가능한 큐

✅ 예제

1) Counter 사용

from collections import Counter

arr = ['a','b','a','c','b','a']
count = Counter(arr)
print(count['a']) # 3
print(count.most_common(2)) # [('a', 3), ('b', 2)]

2) defaultdict 사용

from collections import defaultdict

d = defaultdict(int)
d['a'] += 1
print(d['a']) # 1

3) deque 사용

from collections import deque

q = deque()
q.append(1)
q.appendleft(2)
print(q) # deque([2,1])
q.pop() # 오른쪽 제거
q.popleft() # 왼쪽 제거
profile
Hello. I'm jimin:)

0개의 댓글