2. 6 parameter
함수 이름에는 공백이 들어가면 안되고, 숫자로 시작해서도 안된다.
def say_hello() - say_hello 라는 함수(function)를 정의
def 하고 괄호
() - 괄호를 쓰는 것은 실행버튼을 누른거랑 같다
python 은 공백에 민감하기 때문에 함수 안에 정의 하기 위해서는
def say_hello():
print('abc') - 꼭 스페이스 바 2번 or tab을 눌러서 안에다 정의해주자. 밖에다 정의하면 따로따로 되는거
Paramaters & Arguments (매개변수와 인수)
둘이 혼용해서 사용되는 헷갈리는 용어이므로 잘 구분해야 한다.
parameter(매개변수)는 함수에 입력으로 전달된 값을 받는 변수를 의미하고
Argument(인수)는 함수를 호출할 때 전달하는 입력값을 의미한다.
function에 data를 보내는 방법을 알아보자.
function에게 data 보내는 방법은 function을 실행할때 ( ) 소괄호 안에다가 원하는 data를 넣으면된다.
근데 실행해보면 작동은 되지 않는다. 그 이유는 우리가 만든 fucntion에 data들어갈 공간이 없기 때문이다.
그래서 그 공간을 주기 위해서는 우리가 만든 function ( ) 소괄호안에다가 text을쓰면된다.(문자열이 아닌 그냥 variable(변수)을 만들때 처럼 쓰면된다.) 그리고 data를 사용하려 우리가 만든 function ( ) 소괄호 안에있는 text를 function 안에 입력하면된다.
def say_hello(user_name, name):
print("hello", user_name,name, "how r u?")
say_hello("minsoo &","youngji")
결과값:
hello minsoo & youngji how r u?
우리가 만든 funciton ( ) 소괄호안에 있는 공간의 이름을 parameter라고 한다.
실행할때 사용되는 function ( ) 소괄호 안에의 이름은 argument라고 한다.
def에서 정의한 parameter 갯수와 실행할 때 사용하는 argument 의 갯수가 동일해야 실행된다
user_name, name = parameter(매개변수) = placeholder(그릇) = 전달하는 데이터를 저장하는 그릇
minsoo, youngji = argument(인수) = 실제 전달할 데이터
def say_hello(name='nobody'):
print("hello",name)
say_hello('minsoo')
say_hello()
name='anonymous'
name이라는 parameter 에 기본값 설정(default 값 설정)
기존에는 argument 에 값을 넣지 않으면 에러메시지가 출력되지만
parameter 에 기본값을 설정하면 내가 설정한 기본값이 출력된다( nobody )
python 이 에러를 보여주는 대신 name 을"nobody"로 대체해준다
(사용자들에게 에러를 보여주지 않게 해준다)
출력값:
hello minsoo
hello nobody
챌린지
각기 다른 수학 연산자를 사용하는 함수를 만들어라. ( 덧셈,뺄셈,곱셈,나눗셈,제곱)
조건, 에러값이 안나오게 하고 기본값을 넣어서 만들것
def plus(a=0,b =0):
print(a+b)
def minus(a=0,b =0):
print(a-b)
def multiply(a=0,b =0):
print(a*b)
def divide(a=0,b =1):
print(a/b)
def power(a=0,b =1):
print(a**b)
plus()
plus(7,5)
minus()
minus(7,5)
multiply()
multiply(7,5)
divide()
divide(7,5)
power()
power(7,5)
출력값:
0
12
0
2
0
35
0.0
1.4
0
16807
python 참고 강의
'Programming > Python 웹 스크래퍼 만들기' 카테고리의 다른 글
Python Method (0) | 2022.11.07 |
---|---|
Python while 문 사용해서 랜덤 숫자 맞추기 (0) | 2022.11.04 |
Python 랜덤 숫자 맞추기 (0) | 2022.11.03 |
Python if, elif, else 조건문 (0) | 2022.11.02 |
Python return 키워드 (0) | 2022.11.01 |