Python

Python(14) 모듈

UserDonghu 2023. 9. 19. 22:38

모듈

다른 파일에 작성된 클래스나 함수, 변수를 재사용할 수 있도록 한것

import로 불러옴

# hoo.py

name = 'KimDonghu'
age = 20

def hello():
    return 'hello world'

 

보통 from은 폴더 import는 모듈

import hoo

print(hoo.name) # KimDonghu
hoo.hello() # hello world


from hoo import name, age # 이것도 많이 사용함

print(name) # KimDonghu
print(age) # 20


from hoo import name as n

print(n) # KimDonghu


import hoo as h

print(h.name) # KimDonghu

 

많이 사용하는 모듈

import glob
glob.glob('/content/*') # content폴더 안 모든 파일
glob.glob('/content/*py') # content폴더 안에 모든 py파일
glob.glob('./*/*py') # 모든 폴더 안에 모든 py파일
glob.glob('./???.py') # 이름이 3글자인 py파일
glob.glob('./ho?.py') # ho로 시작하는 3글자 py파일
glob.glob('*.py') # 현재 폴더 안에 모든 py파일

 

import os

os.getcwd() # 현재 위치

# os.makedir() # 폴더 만들기
# os.remove() # 삭제
# os.rename() # 이름 변경

# 현재 폴더 하위 모든 파일 출력
for currend_directory, dirs, files in os.walk('/content'):
    for f in files:
        print(os.path.join(currend_directory, f))

 

import sys

a = [1, 2, 3]
b = a
c = a
# sys.getsizeof() # 객체의 메모리 사이즈 반환
# sys.path # 파이썬이 설치되어 있는 경로 및 라이브러리들의 경로
sys.getrefcount(a) # 4 # a객체가 몇번 사용되었는지 반환

 

import datetime

s = datetime.datetime(2023, 9, 19, 14, 10)
print(s) # 2023-09-19 14:10:00
print(s.year) # 2023
print(s.month) # 9

s.weekday() # 1 # 월요일 0, 화요일 1, 수요일 2 ... 일요일 6

today = datetime.date.today()
print(today) # datetime.date(2023, 9, 19)

 

import json
d = {
    'one': 1,
    'two': 2,
    'three': 3,
}

s = json.dumps(d) # 문자열로 바꿈
print(s) # '{"one": 1, "two": 2, "three": 3}'
print(type(s)) # <class 'str'>

dd = json.loads(s) # 다시 dict로 바꿈
print(dd) # {'one': 1, 'two': 2, 'three': 3}
print(type(dd)) # <class 'dict'>

 

import collections

d = collections.deque([1, 2, 3, 4])
d.rotate(2) # 회전초밥 문제
print(d) # deque([3, 4, 1, 2])

c = collections.Counter('hello world')
print(c) # Counter({'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1})

c.most_common()
# [('l', 3),
# ('o', 2),
# ('h', 1),
# ('e', 1),
# (' ', 1),
# ('w', 1),
# ('r', 1),
# ('d', 1)]