컴퓨터에게 정보를 입력하고,
컴퓨터가 작업하고,
컴퓨터가 작업 결과를 출력.
하나를 입력하면 하나를 수행하고 또 하나를 입력하면 하나를 수행하고...
-> 여러번 입력 너무 번거로워!
-> 이를 한번에 묶을 수 없을까?
해서 탄생한 것이 바로 함수.
컴퓨터(여기서 배우는 언어인 파이썬)에게 어떤 자료를 건네줌 -> 함수가 반복문을 돌리든 조건문을 돌리든 무언가를 시행하고 컴퓨터(파이썬)에게 이를 알려줌
len()
: 자료를 넣으면 그 자료의 길이를 알려준다.
int()
: 자료를 넣으면 정수형으로 변환해서 알려준다.
str()
: 자료를 넣으면 문자열로 변환해서 알려준다.
print()
, len()
, max()
, int()
등등... input()
: 자료를 입력하는 함수print()
: 자료를 출력하는 함수a = input() # hello를 입력함.
print(a) # 출력: hello
max()
: 시퀀스 자료형의 최댓값을 구하는 함수min()
: 시퀀스 자료형의 최솟값을 구하는 함수print(max(1, 2, 3, 4, 5)) # 5
print(min([1, 2, 3, 4, 5])) # 1
sum()
: 숫자 원소로 이루어진 시퀀스 자료의 합len()
: 시퀀스 자료의 길이를 구하는 함수print(sum(1, 2, 3, 4, 5)) # 15
print(len("Triangle")) # 8
def plusDouble(a, b):
c = a+b
return 2*c
print(plusDouble(3, 4)) # 14
def 함수이름(매개변수):
___ <수행할 명령> # ___는 들여쓰기 표시!
___ . . .
___ return 반환값
함수의 입력: 매개변수를 이용해서 함수 내부로 값을 전달
매개변수: 함수 안에서 사용되는 변수
함수 속 명령 작성: 같은 들여쓰기를 통해 명령 작성
함수의 반환(출력): return
을 사용해서 함수 외부로 값을 전달
왜 반환이 필요할까🤔?
: 함수 내부에서 일어난 일은 함수 외부에서는 알 수 없기 때문.
-> 반환을 통해 외부로 전달!
- 원하는 숫자 5개가 담긴 리스트 my_list을 하나 선언해봅시다.
- 변수 var1를 선언하고, my_list의 합을 넣어봅시다.
- 변수 var2를 선언하고, my_list의 길이를 넣어봅시다.
- 변수 var3을 선언하고, my_list의 평균을 넣어봅시다.
my_list = [2, 4, 5, 7, 8]
var1 = sum(my_list)
print(var1)
var2 = len(my_list)
print(var2)
var3 = var1 / var2
print(var3)
26
5
5.2
- 함수
plus_print()
을 만들어봅시다.
- 매개변수 : a, b
- 함수 안에서 a와 b를 더한 값을 출력
- 반환값 없음.
- 함수
times_return()
을 만들어봅시다.
- 매개변수 : a, b
- 반환값 a와 b를 곱한 결과.
- 함수를 작성한 후, 다음과 같이 출력되도록 코드를 작성해봅시다.
plus_print()
으로 숫자 3과 4의 합을 출력해봅시다.print()
와times_return()
으로 숫자 3과 4의 곱을 출력해봅시다.
def plus_print(a, b):
print(a+b)
def times_return(a, b):
c = a*b
return c
plus_print(3, 4)
print(times_return(3,4))
7
12
my_list = [1, 2, 3]
my_list.append(4)
my_list.count(2)
my_list.pop()
위 코드에서 append()
,count()
,pop()
이 이에 해당됨.
my_list = [1, 2, 3]
len(my_list) # len()이라는 함수 안에 매개변수인 my_list가 들어가 자료를 전달함.
sum(my_list)
min(my_list)
my_list = [1, 2, 3]
my_list.sort()
my_list.pop()
my_list.clear()
- 대응 관계가 3개 있는 Dictionary를 만들고, 이를 변수 my_dict에 넣어봅시다.
- 다음 두 메서드를 이용해서, Dictionary의 Key값들을 담은 변수 var1과 Value값들을 담은 변수 var2를 만들어봅시다.
딕셔너리.keys()
: Dictionary형 dict의 모든 Key를 반환딕셔너리.values()
: Dictionary형 dict의 모든 Value를 반환
my_dict = {"사과":"Apple", "바나나":"Banana","체리":"Cherry"}
var1 = my_dict.keys()
var2 = my_dict.values()
print(var1)
print(var2)
dict_keys(['사과', '바나나', '체리'])
dict_values(['Apple', 'Banana', 'Cherry'])
- 함수
solve()
를 만들어봅시다. 이 함수의 매개변수는 a와 b입니다.- 이 함수는 a와 b를 곱한 것을 반환합니다.
- 이 함수에 숫자 3과 4를 인자로 넣어서 반환되는 값을 변수 var1에 넣어봅시다.
- 이 함수에 숫자 3과 리스트
['Cham']
을 인자로 넣어서 반환되는 값을 변수 var2에 넣어봅시다.
매개변수(parameter) : 함수를 정의할 때(만들 때) 넘겨받은 값을 관리하는 변수
인자(argument) : 함수를 호출할 때(사용할 때) 함수로 넘겨주는 자료. 실제 함수를 우리가 사용할 때 넣는 값을 의미한다.
def plusDouble(a, b): #이 때 a, b는 매개변수
return 2*(a+b)
print(plusDouble(3, 4)) # 이 때 3, 4는 인자!
# 함수 호출 시
# a = 3
# b = 4
로 간주
def solve(a, b):
return a*b
var1 = solve(3, 4)
var2 = solve(3, ['Cham'])
print(var1)
print(var2)
12
['Cham', 'Cham', 'Cham']