내장 함수
Python은 다양한 내장 함수를 제공하여 프로그래밍을 더욱 효율적으로 만들어 준다.
# 리스트, 집합, 튜플의 합계 계산
print(sum([3, 4]), sum({3, 4}), sum((3, 4))) # 출력: 7 7 7
# 숫자를 2진수로 변환
print(bin(8)) # 출력: 0b1000
# 형 변환 예제
print(int(1.7), float(3), str(5) + '오') # 출력: 1 3.0 5오
# eval()을 사용하여 수식 계산
a = 10
b = eval('a+5')
print('b=', b) # 출력: b=15
# round() 함수로 반올림
print(round(1.2), round(1.6)) # 출력: 1 2
import math
# math 모듈의 ceil(), floor() 함수
print(math.ceil(1.2), math.ceil(1.6)) # 출력: 2 2
print(math.floor(1.2), math.floor(1.6)) # 출력: 1 1
논리 연산 관련 내장 함수
Python은 리스트의 모든 요소가 참인지, 하나라도 참인지 확인할 수 있는 all()과 any() 함수를 제공한다.
b_list = [True, 1, False]
print(all(b_list)) # 모두가 참일 때만 참, 출력: False
print(any(b_list)) # 하나라도 참일 때 참, 출력: True
b_list2 = [1, 3, 2, 5, 7, 6]
# 리스트 내의 모든 숫자가 10 미만인지 확인
re = all(a < 10 for a in b_list2)
print('모든 숫자가 10미만이냐?', re) # 출력: True
# 리스트 내에 3 미만의 숫자가 있는지 확인
re = any(a < 3 for a in b_list2)
print('숫자 중에서 3미만이냐?', re) # 출력: True
zip() 함수 사용법
zip() 함수는 여러 리스트의 동일한 인덱스에 있는 요소들을 묶어 튜플로 만든다.
print('복수개의 리스트로 튜플을 만들기')
x = [10, 20, 30]
y = ['a', 'b']
for i in zip(x, y):
print(i)
# 출력:
# (10, 'a')
# (20, 'b')
사용자 정의 함수
특정 작업을 수행하는 코드 블록
print('\n사용자 정의 함수')
# 1. 매개변수 X, 반환값 X
def DoFunc1():
print('DoFunc1 호출')
# 2. 매개변수 O, 반환값 X
def DoFunc2(name):
print('안녕', name)
# 3. 매개변수 O, 반환값 O
def DoFunc3(arg1, arg2):
re = arg1 + arg2
return re
# 함수 호출
DoFunc1() # 출력: DoFunc1 호출
DoFunc2('한국인') # 출력: 안녕 한국인
print(DoFunc3('대한', '민국')) # 출력: 대한민국
# 삼각형의 면적을 구하는 함수
def Area_tri(a, b):
c = a * b / 2
Area_print(c)
def Area_print(c):
print('삼각형의 면적은', c)
# 함수 호출
Area_tri(20, 30) # 출력: 삼각형의 면적은 300.0
함수는 여러 값을 반환할 수 있으며, 이를 튜플로 반환한다.
def Swap(a, b):
return b, a
t = Swap(3, 4)
print('t=', t) # 출력: t= (4, 3)
가변 매개변수를 사용하여 함수에 여러 인수를 전달할 수 있다.
def ListHap(*ar):
print(ar)
list1 = [1, 3, 5]
list2 = [1, 2, 6]
ListHap(list1, list2) # 출력: ([1, 3, 5], [1, 2, 6])