-
[python] passpython 2025. 5. 28. 16:50
pass
Python에서 pass는 아무것도 하지 않고 넘어간다는 뜻입니다.
문법적으로는 코드가 있어야 하는 위치지만, 실제로는 아무 동작도 원하지 않을 때 사용합니다.✅ pass란?
아무 동작도 하지 않는 문장 (placeholder)
Python 문법상 구문이 필요한 곳에 임시로 사용합니다.📌 언제 사용하나요?
1. 함수/클래스를 미리 정의해두고 싶을 때
def future_function(): pass # 아직 구현 안 함 class MyClass: pass # 클래스 구조만 잡고 나중에 구현
2. 조건문, 반복문 등을 작성하다가 "지금은 비워둘 때"
for i in range(5): pass # 반복만 해놓고 동작은 아직 없음 if False: pass # 조건은 있으나 아무 것도 하지 않음
3. 예외 처리 시 무시하고 싶을 때
try: risky_code() except: pass # 예외가 발생해도 무시하고 넘어감 (주의: 남용 금지)
❗ 주의할 점
- pass는 실제로 아무 동작도 하지 않습니다.
- 에러를 피하거나 코드 구조만 미리 만들 때 임시로 넣는 용도입니다.
- 너무 많이 쓰거나 예외 처리에 남용하면 버그를 숨기기 쉬우므로 조심해야 합니다.
✅ 정리
항목 설명 역할 아무 동작도 하지 않음 사용 위치 함수, 클래스, 조건문, 반복문 등 용도 임시 코드 자리표시자 주의사항 실제 로직 작성 없이 끝나지 않도록 실습
# 일반 유닛 class Unit: def __init__(self, name, hp, speed): self.name = name self.hp = hp self.speed = speed def move(self, location): print("[지상 유닛 이동]") print("{0} : {1} 방향으로 이동합니다. [속도 {2}]" .format(self.name, location, self.speed)) # 공격 유닛 class AttackUnit(Unit): def __init__(self, name, hp, speed, damage): Unit.__init__(self, name, hp, speed) self.damage = damage def attack(self, location): print("{0} : {1} 방향으로 적군을 공격합니다. [공격력 {2}]"\ .format(self.name, location, self.damage)) def damaged(self, damage): print("{0} : {1} 데미지를 입었습니다.".format(self.name, damage)) self.hp -= damage print("{0} : 현재 체력은 {1} 입니다.".format(self.name, self.hp)) if self.hp <= 0: print("{0} : 파괴되었습니다.".format(self.name)) # 날 수 있는 기능을 가진 클래스 class Flyable: def __init__(self, flying_speed): self.flying_speed = flying_speed def fly(self, name, location): print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\ .format(name, location, self.flying_speed)) # 공중 공격 유닛 클래스 class FlyableAttackUnit(AttackUnit, Flyable): def __init__(self, name, hp, damage, flying_speed): AttackUnit.__init__(self, name, hp, 0, damage) # 지상 속도 0 Flyable.__init__(self, flying_speed) def move(self, location): print("[공중 유닛 이동]") self.fly(self.name, location) # 건물 class BuildingUnit(Unit): def __init__(self, name, hp, location): pass # 서플라이 디폿 : 건물, 1개 건물 = 8유닛 supply_depot = BuildingUnit("서플라이 디폿", 500, "7시") def game_start(): print("[알림] 새로운 게임을 시작합니다.") def game_over(): pass game_start() game_over()
'python' 카테고리의 다른 글
[python] 스타크래프트 프로젝트 (0) 2025.05.29 [python] super (0) 2025.05.28 *[python] 메소드 오버라이딩 (0) 2025.05.28 [python] 다중상속 (0) 2025.05.28 [python] 상속 (0) 2025.05.28