파이썬 애스터리스크(*)

wow_kim·2021년 3월 8일
0

Python

목록 보기
6/6
post-thumbnail

Python에서 *(Asterisk)가 어떻게 사용되는지 알아봅니다.


  1. 곱셈, 거듭제곱

Pass

  1. 리스트 확장
list_1 = [0]*5 # [0, 0, 0, 0, 0]
tuple_1 = (0,)*5 # (0, 0, 0, 0, 0)
  1. 가변인자

가변인자 : 길이가 변할 수 있는 인자(argument),
함수에 입력이 얼마나 들어오게 될지 모르는 경우에 사용
*args : args라는 tuple로 저장됨
**kwargs : kwargs라는 dict에 저장됨

def args_func(*args):
	print(args)
    
def kwargs_func(**kwargs):
	print(kwargs)

args_func(1, 2) # (1, 2)
kwargs_func(a = 1, b = 2) # {'a':100, 'b':200}
  1. 언패킹(Unpacking)

container 타입의 데이터를 unpacking하는 경우에 사용됨.
(**로 딕셔너리형태에서도 활용가능함.)


from functools import reduce

primes = [2, 3, 5, 7, 11, 13]

def product(*numbers):
    p = reduce(lambda x, y: x * y, numbers)
    return p

product(*primes)
# 30030

product(primes)
# [2, 3, 5, 7, 11, 13]
profile
def __wow__(?):

0개의 댓글