Function arguments type과 순서
함수란?
- 일정한 작업을 수행하는 코드블럭이다
- 함수는 입력과 출력이 있는 아주 간단한 구조이다
- 함수는 반복되어 사용되는 코드들을 정의하여 반복을 줄이고, 코드의 가독성을 높일 수 있다
파이썬 함수 문법과 실행
파이썬에서 함수는 def 키워드를 사용해서 정의하고, 문법은 다음과 같다
함수를 실행할 때는 function_name() 으로 실행하고
위와같이 function arguments 가 있을 경우에는 function arguments 를 괄호 안에 넣어주면 된다
input argument(input parameter)에 값이 들어간다 call by value 여기서 값은 객체의 값이 아니라 항상 객체 참조이다.
Function arguments type
- default arguments` (기본 인수)
- variable length positional arguments` (가변 인수)
- keyword-only arguments` (키워드 인수)
- non-default keyword-only arguments` (기본값이 없는 키워드 인수)
- keyword-only arguments with defaults` (기본값이 있는 키워드 인수)
- variable length keyword arguments` (가변 키워드 인수)
def arguments_type(age,name="아이유",*args,phone,address="seoul",**kwargs):
print("age=",end=""), print(age)
print("name=",end=""), print(name)
print("args=",end=""), print(args)
print("phone=",end=""), print(phone)
print("address=",end=""), print(address)
print("kwargs=",end=""), print(kwargs)
# arguments_type(20,"정상수","male",24,phone="01051721024",address="seoul",money="none",hobby="lol")
arguments_type(20,"정상수","male",24,money="none",hobby="lol",address="seoul",phone="01051721024")
예시를 보며 설명하자면
- default arguments는 age에 해당한다 → input parameter의 위치에 따라서 값이 들어간다.
- variable length positional arguments는 “아이유"라는 값이 할당되어있는 name에 해당한다 → 위치에 따라 값이 들어지만, 값이 주어지지 않으면 기존 값이 들어간다
- keyword-only arguments는 *args에 해당한다 → 값이 args에 튜플 형태로 들어간다
- non-default keyword-only arguments는 phone에 해당한다 → 아래 parameter이름과 같은 input parameter가 있어야 한다 input parameter가 존재해야한다
- keyword-only arguments with defaults는 “seoul”이라는 값이 할당되어있는 address에 해당한다 → 아래 parameter이름과 같은 input parameter가 있어야 한다 input parameter가 존재하지 않아도 된다
- variable length keyword arguments는 **kwargs에 해당한다 → 값이 kwargs에 딕셔너리 형태로 들어간다
positional arguments vs non-default kewword-only arguments default arguments vs keyword-only arguments with defaults 보기에 똑같아 보이는데 무슨 차이가 있을까?
*args 의 위치가 중요하다 *args 위치 왼쪽에 있는 arguments 가 positional arguments 와 default arguments 이고, 오른쪽에 있는 arguments 가 non-default kewword-only arguments 와 keyword-only arguments with defaults 이다.
Function arguments 순서
Author And Source
이 문제에 관하여(Function arguments type과 순서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@happy_sangahn/Function-parameter-type과-순서저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)