# 한개의 숫자를 받아서 제곱을 하여 문자로 출력하는 기능 구현
# 정의부(실행 기능 구현)
def num_square(n):
# 받은 숫자 제곱하기
# 결과 출력
print(f"{n}을 제곱한 결과 : {n**2}")
# 호출부(불러 쓰는 부분)
num=20
num_square(num)
return이 있는 경우
함수의 처리 결과를 호출 이후에 사용해야 할 때
함수 안에 처리한데이터는 함수 실행이 끝나면 메모리에서 지워짐
# 정의부 (실행 기능 구현)
def num_square(n):
# 받은 숫자 제곱하기
# 처리 결과를 호출한 부분으로 보내줌
return n**2
# 호출부 (불러 쓰는 부분)
num=20
num2=100
result=num_square(num)
# 리턴 받은 결과를 num2와 더해서 출력
print(f"{result}와 {num2}를 더한 결과 : {result+num2}")
Parameter가 하나인 경우
어떤 숫자 1개를 입력으로 주면, 그 숫자를 제곱해서 리턴하는 함수
함수를 호출하는 부분을 먼저 정의
함수를 만들 사용자에게 요청, 함수 호출
함수 이름, 넘겨줄 값, 받는 값
호출: 출력하는 함수
Parameter가 두개인 경우
# 어떤 숫자와 제곱 횟수를 입력받으면, 그 숫자의 몇제곱해서 리턴하는 함수
# 정의부
def num_exp(n,e):
return n**e
# 입력: 4**10 -> 4, 10
# 출력: 4**10의 결과는 {결과}입니다.
# 호출부
num=4
exp=10
result=num_exp(num, exp) # 함수 호출
print(f"{num}**{exp}의 결과는 {result}입니다.")
Return 값이 둘 이상인 경우
# 숫자 두개를 입력받으면, 그 숫자들로 나눠서, 몫과 나머지를 리턴하는 함수
# 정의부
# 그 숫자들로 나눠서, 몫과 나머지를 리턴
def cal_share_remain(num1, num2):
# 두 숫자들로 나눠서 몫
share = num1//num2
# 두 숫자 나눠서 나머지
remain = num1%num2
return share, remain
# 호출부 방법1
# 숫자 두개를 입력받으면, 몫과 나머지 출력
# 두 숫자
num1 = 40
num2 = 5
# remain, share
result = cal_share_remain(num1, num2)
# 출력
result
# 40을 5로 나누면 몫은 8, 나머지는 0입니다.
print(f"{num1}을 {num2}로 나누면 몫은 {result[0]}, 나머지는 {result[1]}입니다.")
or
# 호출부 방법2
# 숫자 두개를 입력받으면, 몫과 나머지 출력
# 두 숫자
num1 = 40
num2 = 5
# remain, share <- 리턴값이 2개이기 때문에 순서대로 변수에 대입
result1, result2 = cal_share_remain(num1, num2)
# 출력
# 40을 5로 나누면 몫은 8, 나머지는 0입니다.
print(f"{num1}을 {num2}로 나누면 몫은 {result1}, 나머지는 {result2}입니다.")
Default Parameter
# 나이를 입력받으면, 나이가 몇인지 화면에 출력하는 함수
# 함수 정의부
# age=30 <- 디폴트 매개변수
def print_age(age=30):
return f"나이는 {age}살 입니다."
# 호출부
age=input("나이입력>> ")
# age=30
print(print_age(age))
Built-In Functions
함수에 주석을 달 수 있음
Docstring: 함수가 어떻게 동작하는지 comment를 달 때 사용
# 함수 정의
def print_age(age=30):
"""
# age=30 <- 디폴트 매개변수
# return str
"""
return f"나이는 {age}살 입니다."
print_age()
< 11. 파일다루기 >
텍스트 파일의 처리
파일 열기 open() - 파일 읽기 file.read() - 파일 쓰기 close()
open() 함수
파일 객체 = open(문자열:파일 경로, 문자열:읽기 모드)
w : write 모드
a : append 모드
r : read 모드