Python - 함수의 파라미터 여러개 일때(*args)

2022. 6. 21. 17:24·Python/개인 공부

보통 함수라면 인수(파라미터)가 몇개인지 정해져있다.

더하기 함수를 만든다고 가정하면

1
2
def add_cal(a, b):
    return a + b
cs

a하고 b로 들어가는 수가 인수이다. 들어갈 수 있는 파라미터는 2개이다.

그러면 인수가 몇개가 들어갈 지 모를때는?

 

1
2
3
4
5
6
7
def add_cal(*args):
    result = 0
 
    for i in args:
        result = result + i
    return result
    
cs

여기서 args는 그냥 변수이름이다. *anything, *python 이렇게 아무 이름이나 사용해도 된다.

이 함수는 들어가는 인수들을 싹다 result값에 더하고 반환해주는 함수이다.인수를 몇개를 넣든 상관없다.

 

예를 들어,

인수의 개수를 그냥 마음대로 1, 2, 3, 4, 5 라는 5개를 넣어보고 이걸 싹다 더해서 result로 반환

그리고 출력해보았다. 15가 나온다.

1
2
3
4
5
6
7
8
9
10
11
def add_cal(*args):
    result = 0
 
    for i in args:
        result = result + i
    return result
 
print(add_cal(1, 2, 3, 4, 5))
 
 
>>>15
cs

 

-------------------------------------------------------------------------------------------------------------------

이것도 가능하다!

1
2
3
4
5
6
7
8
9
10
11
12
def add_mul(choice, *args):
    if choice == "add":
        result = 0
        for i in args:
            result = result + i
 
    elif choice == "mul":
        result = 1
        for i in args:
            result = result * i
 
    return result
cs

 

1
add_mul('mul', 1, 2, 3, 4, 5)
cs

매개변수 choice는 mul이 되고 elif조건에서 걸리기때문에 곱셈을 하게된다.

add_mul('add', 1, 2, 3, 4, 5)

이렇게 하면 choice가 add이기 때문에 덧셈을 하게됨.

 

'Python > 개인 공부' 카테고리의 다른 글

Mac os - 터미널 명령어 정리(2022.06.20)  (0) 2022.06.20
Python - 소수 구하기  (0) 2022.06.13
Python - print문의 사용 (end, sep) (내가 헷갈려서..)  (0) 2022.06.10
Python - 피하기 게임(개인 프로젝트)  (0) 2022.06.08
'Python/개인 공부' 카테고리의 다른 글
  • Mac os - 터미널 명령어 정리(2022.06.20)
  • Python - 소수 구하기
  • Python - print문의 사용 (end, sep) (내가 헷갈려서..)
  • Python - 피하기 게임(개인 프로젝트)
Jminu
Jminu
  • Jminu
    뇌 구조가 바이너리
    Jminu
  • 전체
    오늘
    어제
    • 분류 전체보기
      • C프로그래밍
        • 오류해결
        • 개인 공부
        • Programming Lab(학교수업)
        • MemoryTracker
      • C++
        • 개인 공부
      • 자료구조(Data Structure)
      • ARM arch
        • Cortex-M
      • 컴퓨터 공학(Computer Science)
        • OS
        • 컴퓨터 구조
      • Web
      • Linux
      • 똥글
      • 백준
      • Git 학습
        • 오류해결
        • 학습중
      • Python
        • 오류해결
        • 개인 공부
      • Qualcomm 기업과제
  • 블로그 메뉴

    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    rubik pi
    동적메모리
    루빅보드
    백준
    파일 입출력
    순환
    파이썬
    Branch
    권머현
    이진 트리
    rubik pi 3
    버퍼
    Qualcomm
    INIT
    rubikpi
    포인터
    스택
    커널
    소수
    피보나치
    rubikpi3
    commit
    자료구조
    Git
    과속탐지
    ptrace
    c언어
    C++
    yolo
    thumb2
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Jminu
Python - 함수의 파라미터 여러개 일때(*args)
상단으로

티스토리툴바