Python Basic _ 8-2. 파이썬 외장함수

WONY_yoon·2025년 10월 9일
post-thumbnail

Python External 함수 알아보기

# Chapter08-2
# 파이썬 외장(External) 함수
# 실제 프로그램 개발 중 자주 사용하는 주요 모듈 실습
# 주요 모듈 : sys, pickle, os, time, random, webbrowser 등

# 예제 1 : sys.argv (실행 시 인자값 확인)
import sys
print(sys.argv)    # 실행 시 전달받은 인자 리스트 출력

print()

# 예제 2 : 강제 종료 (사용 시 주석 해제)
# sys.exit()

# 예제 3 : 파이썬 패키지 경로 확인
print(sys.path)    # 파이썬이 모듈을 찾는 경로 리스트

print()

# pickle : 객체를 파일로 저장하거나 불러오는 모듈
import pickle

# 예제 4 : 객체 파일로 저장 (쓰기)
f = open("test.pobj", 'wb')
obj = {1: 'python', 2: 'study', 3: 'basic'}
pickle.dump(obj, f)     # 객체 → 파일 직렬화
f.close()

# 예제 5 : 객체 파일 불러오기 (읽기)
f = open("test.pobj", 'rb')
data = pickle.load(f)   # 파일 → 객체 역직렬화
print(data, type(data))
f.close()

print()

# os : 운영체제 관련 기능 (환경변수, 경로, 디렉터리 등)
import os

# 예제 6 : 환경 변수 확인
print(os.environ)           # 시스템 환경 변수 전체 출력
print(os.environ['HOME'])   # HOME 경로 확인

print()

# 예제 7 : 현재 작업 경로 확인
print(os.getcwd())          # get current working directory

print()

# time : 시간 관련 모듈 (시간 처리, 포맷 변환, 지연 등)
import time

# 예제 8 : 현재 시간 (timestamp)
print(time.time())          # 1970.1.1 이후 경과된 초

# 예제 9 : 구조체 형태로 변환
print(time.localtime(time.time()))   # 현재 로컬 시간 정보 반환

# 예제 10 : 간단한 문자열 형태
print(time.ctime())         # 읽기 쉬운 문자열 시간

# 예제 11 : 포맷팅된 시간 출력
print(time.strftime('%y-%m-%d %H:%M:%S', time.localtime(time.time())))

# 예제 12 : 시간 지연 (1초씩 대기)
for i in range(3):
    print(i)
    time.sleep(1)

print()

# random : 난수 생성 모듈
import random

# 예제 13 : 0 ~ 1 사이의 난수 (실수형)
print(random.random())

# 예제 14 : 정수형 난수
print(random.randint(1, 45))     # 1~45 사이의 정수
print(random.randrange(1, 45))   # 동일하지만 range 규칙 적용

# 예제 15 : 리스트 섞기
d = [1, 2, 3, 4, 5]
random.shuffle(d)
print(d)     # 리스트 순서가 무작위로 변경됨

# 예제 16 : 무작위 선택
c = random.choice([1, 2, 3, 4, 5])
print(c)

# webbrowser : 기본 웹 브라우저 실행
import webbrowser
webbrowser.open('http://google.com')       # 기본 브라우저 새 탭으로 열기
webbrowser.open_new('http://google.com')   # 새 창으로 열기

0개의 댓글