함수는 입력을 받아 결과를 반환하는 재사용 단위다. `return`이 없으면 None을 반환한다.
def add_move(move: str, history: list[str] | None = None) -> list[str]:
if history is None:
history = []
history.append(move)
return history인자는 위치로도, 이름으로도 전달할 수 있다. `/` 앞은 위치 전용, `*` 뒤는 키워드 전용이다. 공개 함수에서 의미가 중요한 bool 옵션은 키워드 전용으로 만들면 호출부가 읽힌다.
def connect(host, /, *, timeout=3.0):
...`*args`는 남은 위치 인자를 튜플로, `**kwargs`는 남은 키워드 인자를 딕셔너리로 받는다. 편리하지만 허용할 인자를 숨기므로, 전달용 래퍼가 아니라면 명시적인 매개변수를 선호한다.
댓글
0개아직 댓글이 없습니다.