• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

함수 호출 시 함수 정의의 인자 명을 명시하는게 더 나은 코드인지?

23.03.12 15:01 작성 조회수 161

0

def func(country):
    print(f"country = {country}")

# 1)
func(country = "South Korea")

# 2)
func("South Korea")

1번 방식과 2번 방식 중에

어떤 방식이 더 나은 코드인지 궁금합니다.

함수 정의 시 만든 인자 명을 명시하는게 나은 코드인가요 ? (보통 이런 방식의 코드를 많이 못봐서 여쭙습니다.)

답변 1

답변을 작성해보세요.

1

안녕하세요.

우선 질문 잘 하셨습니다. 1번 방식이 좋고, 파라미터에는 빈공간이 없어야 합니다.

def func(country="South Korea")

인자 명을 무조건 명시하시는게 낫습니다. 왜냐하면 확장성에 문제도 있고, 나중에 파라미터 순서가 바뀌어버리면 일일이 코드 다 고쳐야됩니다. 또한 나중에 다른 개발자가 코드 볼때 너무 힘듭니다. 실리콘 밸리에서는 대부분 명시해서 함수를 부르는데, 괜찮은 오픈 소스들 다 보시면 직접적으로 명시하는 것을 보실 수 있을 겁니다.

K MJ님의 프로필

K MJ

질문자

2023.03.12

빠른 답변 감사합니다.

앞으로는 keyword argument 형태로 구현하도록 노력해야겠네요.