표준 모듈
import
다른 파일에 정의된 변수, 함수, 객체 등을 사용하기 전에 파일을 가져온다.
import 모듈 [as alias] from 모듈 import 함수명
전체 파일의 크기를 줄이려면
from 모듈 import 함수명
의 형식으로 작성하는게 좋다.아래의 출력 결과는 모두 같다.
import math print(math.sqrt(2))
from math import sqrt print(sqrt(2))
import math as m print(m.sqrt(2))
from math import sqrt as sq print(sq(2))
수학 (math)
https://docs.python.org/ko/3/library/math.html
상수
상수 | 설명 |
---|---|
pi | 원주율 |
tau | 원주율 2배 |
e | 자연 대수 |
inf | 무한대 |
nan | 숫자가 아닌 값 |
함수
함수명 | 설명 |
---|---|
sqrt(x) | 제곱근 |
pow(x,y) | 거듭제곱 |
hypot(x,y) | 빗변 계산 |
factorial(x) | 팩토리얼 |
sin(x), cos(x), tan(x) | 삼각함수 |
degrees(x) | 라디안 -> 도(degree) |
radians(x) | 도(degree) -> 라디안 |
ceil(x) | 올림 |
floor(x) | 버림 |
fabs(x) | 절댓값 |
trunc(x) | 정수화, int(x)와 같은 결과를 반환한다. |
log(x, base) | 로그 |
log10(x) | 상용 로그 |
gcd(a, b) | 최대 공약수를 반환 |
통계 (statistics)
함수
함수명 | 설명 |
---|---|
mean() | 평균 |
harmonic_mean() | 조화평균 |
median() | 중앙값, 짝수인 경우 보간값 계산 |
median_low() | 중앙값을 구함, 집합 내의 낮은 값 선택 |
median_high() | 중앙값을 구함, 집합 내의 높은 값 선택 |
mdeian_grouped() | 그룹 연속 중앙값 |
mode() | 최빈값 |
pstdev() | 모표준편차 |
stddev() | 표준편차 |
variance() | 분산 |
시간 (time)
유닉스 시간(Epoch 시간, POSIX 시간)
1970년 1월 1일 00:00:00 협정 세계시(UTC) 부터의 경과 시간을 초로 환산하여 정수로 나타낸 것이다.
import time t = time.time() print(t) print(time.ctime(t)) # 우리나라에선 잘 안쓴다. now = time.localtime(t) print(f"{now.tm_year}년 {now.tm_mon}월 {now.tm_mday}일", end = ' ') print(f"{now.tm_hour}:{now.tm_min}:{now.tm_sec}") ''' stdout 1625810577.426773 Fri Jul 9 15:02:57 2021 2021년 7월 9일 15:2:57 '''
time.struct_time
클래스gmtime()
,localtime()
,strptime()
의 반환 시퀀스 자료형
인덱스 속성 값 0 tm_year 연도 1 tm_mon 월 [1, 12] 2 tm_mday 일 [1, 31] 3 tm_hour 시간 [0, 23] 4 tm_min 분 [0, 59] 5 tm_sec 초 [0, 61] 6 tm_wday 요일 [0, 6], 월요일 시작 7 tm_yday 연중 며칠째인지 [1, 366] 8 tm_isdst 일광 절약 시간제 적용 시 1, 아니면 0, 모르면 -1 없음 tm_zone 시간대 이름의 약어 없음 tm_gmtoff UTC에서 동쪽으로 초 단위 오프셋 datetime
사용from datetime import datetime now = datetime.now() dates = ("월", "화", "수", "목", "금", "토", "일") print(f"{now.year}년 {now.month}월 {now.day}일 {dates[now.weekday()]}요일", end = ' ') print(f"{now.hour:02d}:{now.minute:02d}:{now.second:02d}") ''' stdout 2021년 7월 9일 금요일 15:06:33 '''
메서드
메서드 | 변환 전 | 변환 후 |
---|---|---|
gmtime() | 에포크 이후 초 | UTC의 struct_time |
localtime() | 에포크 이후 초 | 현지 시간의 struct_time |
calendar.timegm() | UTC의 struct_time |
에포크 이후 초 |
mktime() | 현지 시간의 struct_time |
에포크 이후 초 |
실행 시간 측정
import time
start = time.time()
for a in range(1000):
print(a)
end = time.time()
print(end - start)
''' stdout
0
1
...
999
0.23747658729553223
'''
실행 멈춤
import time
print("안녕하세요")
time.sleep(1)
print("밤에 성시경이 두 명 있으면 뭘까요?")
time.sleep(3)
print('야간투시경입니다.')
달력 (calendar)
달력 출력 가능
import calendar as cal print(cal.calendar(2021)) print(cal.month(2021, 7))
난수 (random)
함수
함수명 | 설명 |
---|---|
.random() | 0 ~ 1 사이의 난수 리턴 (1 미포함) |
.randint(begin, end) | begin ~ end 사이의 정수 난수 리턴 (end 포함) |
.randrange(begin, end) | begin ~ end 사이의 정수 난수 리턴 (end 미포함) |
.uniform(begin, end) | begin ~ end 사이의 실수 난수 리턴 (end 미포함) |
.choice(시퀀스) | 시퀀스에서 랜덤하게 요소를 선택하여 리턴 |
.shuffle(시퀀스) | 시퀀스의 내용을 랜덤하게 섞는다. |
.sample(시퀀스, count) | 시퀀스에서 랜덤하게 count 만큼의 요소를 샘플로 뽑아 리턴 |
import random
for i in range(3):
print(random.random())
print()
for i in range(3):
print(random.randint(1, 10))
print()
for i in range(3):
print(random.randrange(1, 10))
print()
for i in range(3):
print(random.uniform(1, 10))
food = ["짜장면", "짬뽕", "탕수육", "군만두"]
print()
print(random.choice(food))
print()
print(random.sample(food, 2))
print()
print(food)
print()
random.shuffle(food)
print(food)
''' stdout
0.49319954486125117
0.34949220090889466
0.8089770081669401
8
1
2
5
4
1
6.949706451204434
4.21418278703128
8.835615150642608
짬뽕
['탕수육', '짜장면']
['짜장면', '짬뽕', '탕수육', '군만두']
['군만두', '탕수육', '짬뽕', '짜장면']
'''
시스템 (sys)
시스템 정보
import sys
print("버전: ", sys.version)
print("플랫폼: ", sys.platform)
print("바이트 순서: ", sys.byteorder)
print("모듈 경로: ", sys.path)
sys.exit(0)
''' stdout
버전: 3.8.8 (default, Apr 13 2021, 15:08:03) [MSC v.1916 64 bit (AMD64)]
플랫폼: win32
바이트 순서: little
모듈 경로: ['c:\\~~~']
'''
'Python > Syntax' 카테고리의 다른 글
파이썬 파일 (0) | 2021.08.24 |
---|---|
파이썬 예외 처리 (0) | 2021.08.24 |
파이썬 컬렉션 관리 (0) | 2021.08.24 |
파이썬 집합(Set) (0) | 2021.08.22 |
파이썬 사전(Dictionary) (0) | 2021.08.22 |