728x90
오늘은 Syntactic Sugar, Optional Parameters에 대해서 알아보도록 하자.
- Syntactic Sugar : 자주 쓰이는 표현을 더 간략하게 쓸 수 있게 해주는 문법 이다.
코드로 알아보자면.. 아래 코드들 중 두줄 씩 서로 같은 결과를 나타내게 된다.
# x 에 기존 x 값에 1을 더한 값을 넣는다
x = x + 1
x += 1
# x 에 기존 x 값에 3을 더한 값을 넣는다
x = x + 3
x += 3
# x 에 기존 x 값에 3을 곱한 값을 넣는다
x = x * 3
x *= 3
# x 에 기존 x 값에 3을 뺀 값을 넣는다
x = x - 3
x -= 3
# x 에 기존 x 값에 3을 나눈 몫을 넣는다
x = x / 3
x /= 3
# x 에 기존 x 값에 3을 나눈 나머지 값을 넣는다
x = x % 3
x %= 3
- Optional Parameters : 파라미터의 기본값을 설정해두면 함수 호출을 할 때 파라미터에 해당되는 값을 넘겨주지 않았을 경우, 그 파라미터는 기본값을 갖게 되는 파라미터를 의미한다.
코드로 알아보자면..
함수 선언 시 입력받는 값에 기본값을 지정해 주면 해당 파라미터는 함수 호출 시 써주지 않아도 기본값으로 자동 입력되는 것이다.
주의할 점은 맨 뒤의 파라미터 부터 기본값을 설정해주어야 한다는 점이다.
def introduce(name, age, nationality = "한국"):
print("이름 : %s" % name)
print("나이 : %d살" % age)
print("국적 : %s" % nationality)
introduce("멍선생", 34)
introduce("멍선생", 34, "대한민국")
첫 번째 함수 호출에서 마지막 파라미터를 입력 안했음에도 "한국"이라는 단어가 나온다.
만약 마지막 파라미터가 아닌 첫번째나 두번째 파라미터에 기본값을 설정한다면, 아래와 같은 에러를 보게 될 것이다.
다행이도 컴파일러가 선언할 때 부터 오류라고 알려준다..
(왜 맨 끝에 해야하는지 뭐라고 말로 쉽게 풀어서 설명이 안된다 ㅜ)
def introduce(name, age=34, nationality):
print("이름 : %s" % name)
print("나이 : %d살" % age)
print("국적 : %s" % nationality)
introduce("멍선생", 34)
introduce("멍선생", "대한민국")
주로 숫자 계산할 때 빠르게 할 수 있는 Syntactic Sugar 와
함수 선언 시 파라미터의 기본값을 설정하는 Optional Parameters 를 알아보았다.
오늘의 공부는 여기서 끝.
728x90
반응형
'5분 공부' 카테고리의 다른 글
[5분공부] local 변수와 global 변수 (지역 변수, 전역 변수) (0) | 2022.07.26 |
---|---|
[5분공부] return문 (0) | 2022.07.13 |
[5분 공부] 파이썬 함수, 들여쓰기 (1) | 2022.06.07 |
[5분 공부] Python 변수, 지정 연산자(assignment operator) (0) | 2022.05.24 |
[5분 공부] Python 기본 - Floor Division, 반올림 (0) | 2022.05.11 |
댓글