1. 오버라이딩
- 하위클래스에서 상위 클래스의 메소드 재정의(override)
class Robot:
(생략)
def fire(self):
print('화염 공격!')
class NewRobot(Robot):
(생략)
def fire(self):
print('미사일 공격!') → 오버라이딩
2. 내장함수와 사용자 함수
1) 내장 함수 : 기본적으로 파이썬에서 제공하는 함수 ex) print, input
2) 사용자 함수 : 사용자가 직접 선언하는 함수
(1) 선언
def addFun(x,y):
return x + y
(2) 호출
addFun()
tip) 함수명은 기능으로 작명
tip) 함수 내에서 또 다른 함수 호출 가능
tip) pass로 실행문 생략 가능
tip) return 키를 이용하여 함수 호출부로 실행 결과 반환(단,return을 만나면 함수 종료)
3. 인수와 매개변수
- 함수 호출 시 함수에 데이터 전달 가능
def greet(customer1, customer2): → 매개변수
print(f'{customer1, cusomer2} 안녕하세요.')
greet('홍길동', '박찬호') → 인수
tip) 인수와 매개변수는 일치해야한다.
tip) 매개변수 개수가 정해지지 않은 경우 '*'를 이용한다.
def greet(*numbers): → 매개변수
for i in numbers:
print(i, end="")
greet(10)
greet(10, 20)
greet(10, 20, 30)
4. 지역변수와 전역변수
1) 전역변수 : 함수 밖에서 선언된 변수로, 어디에서나 사용은 가능하시만 함수 안에서 수정 불가
2) 지역변수 : 함수 안에서 선언된 변수로 함수 안에서만 사용 가능
num_out = 10 → 전역변수 선언, 초기화
def printNumbers():
num_out = 20 → 지역변수 : 형태는 같으나, 다름(like 동명이인)
print(f'num_out : {num_out}')
tip) 지역변수를 호출하면 에러가 난다.
3) global 키워드 : global을 사용하면 함수 안에서도 전역변수의 값을 수정 가능
num_out = 10
def printNumbers():
global num_out
num_out = 20 → 20으로 초기화
print(f'num_out : {num_out}')
5. 중첩함수
- 함수 안에 또 다른 함수
tip) 내부 함수를 함수 밖에서 호출 불가
6. lambda 함수
- lambda 키위드를 사용하면 함수 선언을 보다 간단하게 할 수 있다.
def calculator(n1, n2):
return n1+ n2
calculator = lambda n1 + n2: n1 + n2
'Python > Python 기초' 카테고리의 다른 글
[파이썬 기초] return과 print의 차이 (0) | 2022.04.30 |
---|---|
[파이썬 기초] 추상클래스, 예외 (0) | 2022.04.28 |
[파이썬 기초] 클래스 상속 (0) | 2022.04.28 |
[파이썬 기초] 객체지향 프로그래밍 (0) | 2022.04.28 |
[파이썬 기초] 패키지 (0) | 2022.04.28 |