본문 바로가기
Python

Python - External functions

by DGK 2021. 10. 18.

 

인프런 파이썬 입문 수업을 듣고 중요한 내용을 정리했습니다.
개인 공부 후 자료를 남기기 위한 목적이므로 내용 상에 오류가 있을 수 있습니다.

 

External functions

 

  • 기본 개념
# 외장함수 종류

# sys, pickle, os, shutil, glob, temfile, time, random.. 등




# 활용 예시

# sys

import sys
print(sys.argv)

# sys.argv[]에서 파이선의 명령행 인자를 배열형태로 받을 수 있다.
# sys.argv[0]는 실행 경로를 담고 있고, sys.argv[1]부터는 전달되는
# 객체의 요소를 배열의 원소로 저장할 수 있다.



# sys.exit

sys.exit()

# 프로그램을 강제로 종료하는 함수이다.(주의해서 사용해야 함)



# sys.path

print(sys.path)

# 파이썬의 모든 패키지 위치를 보여주는 함수이다.
# sys.path와 append( ) 함수를 통해 패키지의 경로를 반 영구적으로 등록할 수 있다.



# pickle

import pickle      

f = open("test.obj", 'wb')
obj = {1: 'Python', 2: 'study', 3: 'basic'}
pickle.dump(obj, f)	    # 쓰기를 할 때는 dump 사용
f.close()


f = open("test.obj", 'rb')
data = pickle.load(f)       # 읽을 때는 load 사용
print(data, type(data))     
f.close()

# 결과 : {1: 'Python', 2: 'study', 3: 'basic'} <class 'dict'>

# 파이썬에서 읽을 수 있는 데이터 타입을 파일 형태로 불러와서 쓰거나 읽을 수 있는 기능이다. 
# 즉, 파이썬에서 사용할 수 있는 객체(튜플, 클래스, 딕셔너리, 리스트 등)를 
# 저장 장치에서 쓰고, 읽을 때 사용하는 것이 pickle이다.
# 첫 번째 코드 예시가 쓰기 기능, 두 번째 코드 예시가 읽기 기능이다.



# os 

import os  


print(os.environ)

# 결과 : 운영체제의 환경정보가 딕셔너리 형태로 출력된다.

print(os.environ["USER"])

# 결과 : donggyu(유저명)

print(os.getcwd())

# 결과 : /Users/donggyu/Desktop/python_basic
# 현재의 작업 경로를 알려주는 기능이다.

# 운영체제에서 사용할 수 있는 기능들을 파이썬 코드로 지원해주는 패키지이다.

# 환경 변수 관련 , 디렉토리(파일) 처리 관련 , 운영체제 작업 관련 등의 기능을 한다.
# mkdir(폴더 생성), rmdir(폴더 삭제 : 폴더가 비어있을 경우에만 삭제),
# rename(이름 변경).. 등



# time

import time


print(time.time())

# 결과 : 1634455580.060993(시간,분,초,밀리세컨드)

print(time.localtime(time.time()))

# 결과 :
# time.struct_time(tm_year=2021, tm_mon=10, tm_mday=17, tm_hour=16,
# tm_min=27, tm_sec=15, tm_wday=6, tm_yday=290, tm_isdst=0)
# 위의 결과 값인 1634455580.060993을 자세하게 풀어서 반환해준 것이다.

print(time.ctime())

# 결과 : Sun Oct 17 16:29:06 2021

print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))

# 결과 : 2021-10-17 16:31:36
# strftime( ) 함수는 사용자가 원하는 형식으로 시간관련 정보를 반환해준다.

for i in range(5):
     print(i)
     time.sleep(1)
     
# for문을 n(인자 값)초마다 반복 실행해주는 코드이다.
# 즉, sleep( ) 함수를 사용하면 지정한 시간 간격마다 반복문을 실행한다.



# random

import random


print(random.random())

# 결과 : 0~1 사이의 실수를 랜덤으로 출력해준다.

print(random.randint(1, 45))

# 결과 : 1~45 사이의 정수형을 랜덤으로 출력해준다.

print(random.randrange(1, 45))

# 결과 : 1~44 사이의 정수형을 랜덤으로 출력해준다.

d = [1, 2, 3, 4, 5]
random.shuffle(d)
print(d)

# 결과 : [5, 3, 2, 1, 4], [4, 2, 5, 1, 3], ..
# random.shuffle( ) 함수는 리스트의 요소를 랜덤으로 섞어서 반환해준다.
# 단, iterable 자료형에만 적용 가능하다.


c = random.choice(d)
print(c)

# 결과 : 2, 4, 1, 3, ..
# random.choice( ) 함수는 리스트의 요소를 랜덤으로 하나씩 출력한다.
# 단, iterable 자료형에만 적용 가능하다.



# webbrowser 

import webbrowser


webbrowser.open("http://google.com")
webbrowser.open_new("http://google.com")  # 새로운 탭에서 웹브라우저가 열림

# webbrowser.open( ) 함수는 본인 os의 웹 브라우저를 실행한다.

'Python' 카테고리의 다른 글

Python - 기본 문법(추가내용)  (0) 2021.10.21
Python - File Write  (0) 2021.10.20
Python - Built in functions  (0) 2021.10.18
Python - Exception  (0) 2021.10.18
Python - package  (0) 2021.10.18

댓글