goodthings4me.tistory.com
■ 파이썬의 함수 인자(함수를 호출할 때 함수로 전달되는 값)에는 위치 인자 (positional argument)와 키워드 인자 (keyword argument) 인자가 있다. 위치 인자 (positional argument)들은 인자 중 처음에 나오거나 이터러블의 앞에 '*' 기호를 붙여 전달할 수 있는 인자를 말하고, 키워드 인자 (keyword argument)는 함수 호출 때 식별자가 앞에 붙은 인자 (예를 들어, name= ) 또는 '**' 기호를 앞에 붙인 딕셔너리로 전달되는 인자를 말한다.
def func(st):
return st
p = [1, 3, 5]
print(func(p)) # [1, 3, 5]
print(func([1, 3, 5])) # [1, 3, 5]
#print(func(1, 2, 3))
# TypeError: func() takes 1 positional argument but 3 were given
def func1(a, b, c, d):
return a, b, c, d # 튜플로 리턴
print(func1(1, 2, 3, 4)) # (1, 2, 3, 4)
lst = [5, 6, 7, 8]
#print(func1(lst))
# TypeError: func1() missing 3 required positional arguments: 'b', 'c', and 'd'
#print(func1([5, 6, 7, 8]))
# TypeError: func1() missing 3 required positional arguments: 'b', 'c', and 'd'
print(func1(*lst)) # (5, 6, 7, 8)
# 리스트나 튜플 등의 객체에 '*' 표시를 붙여 인자로서 입력하면, 언패킹(풀어져)되어 함수의 인자 각 위치에 맡게 입력된다.
ls = [5, 6, 7]
#print(func1(*ls)) # 언패킹된 인자의 수가 안맞으면 에러 발생
# TypeError: func1() missing 1 required positional argument: 'd'
# 함수 정의 시 언패킹을 사용하면, 받는 인자수에 제한이 없어진다.
def func2(*arg):
return arg
print(func2(lst)) # ([5, 6, 7, 8],) --> 변수 lst는 한 개의 인자임
print(func2(*lst)) # (5, 6, 7, 8) --> 언패킹되어 4개의 숫자로 대입
print(func2(*[5, 6, 7, 8])) # (5, 6, 7, 8) --> list 직접 대입, 언패킹
# 키워드 인자(keyword argument) 언패킹 - 키워드 인자 언패킹은 키와 값이 있는 dict 타입 변수에 '**' 표시를 대입함
def fruits1(banana, apple, pear):
return banana + apple + pear
f = {'banana': 10, 'apple': 15, 'pear': 5}
print('fruits sum =', fruits1(**f)) # fruits sum = 30
def fruits2(**kwargs):
sum = 0
for v in kwargs.values():
sum += v
return sum
f = {'banana': 10, 'apple': 15, 'pear': 5, 'orange': 20}
print(fruits2(**f)) # 50
Life is Short, Use Python.
블로그 인기글
엑셀 시트 분리 저장 - 엑셀 파일의 시트를 분리하여 저장하기
엑셀을 사용하다 보면 엑셀 시트를 분리해서 저장해야 할 때가 있다. 최근에도 이런 경우가 발생하여 구글링 후 엑셀 시트 분리 업무를 수행하고 내친김에 다른 사람들도 사용할 수 있도록 파이썬 tkinter로 프로그램으로 만들어 보았다. Excel Sheets 분리 저장하는 프로그램(with 파이썬 Tkinter) ※ 프로그램 다운로드(네이버 MYBOX에서 공유) : ExcelSeparateSheets.zip ▶ 프래그램을 실행하면 다음과 같이 초기 화면이 보인다. 찾아보기 : 엑셀 파일이 있는 폴더를 선택한다. (프로그램이 있는 최상위 디렉터리가 열린다) 실행하기 : 프로그램 실행 버튼 상태 변경 순서 : 실행전 → 실행 중 → Sheet "OOO" 분리 저장 중 → 실행 완료 실행 결과 확인 : 엑셀 파..
goodthings4me.tistory.com
폐업 신고 절차와 부가가치세 신고하는 방법
폐업 신고 시 세무서 안 가고 온라인으로 신고하는 방법인 '국세청 홈택스를 이용하여 폐업 신고하는 절차와 폐업 후 해야 하는 부가가치세 신고, 인건비 저리, 종합소득세 신고 등에 대해 포스팅합니다. 폐업 신고 시 홈택스 이용하는 방법과 부가가치세 등 신고 절차 여러가지 사유로 폐업을 해야 할 때, 예전에는 세무서를 방문해야 했지만 국세청 홈택스가 생긴 이후에는 사업자 등록이나 폐업 등을 인터넷으로 할 수가 있게 되었습니다. 특히, 코로나 시국인 요즘은 더더욱 온라인 신청 업무가 더 활성화되었죠. 폐업을 한다는 것 자체가 우울한 일인데, 발품을 파는 것보다는 커피 한잔 하면서 인터넷으로 간단하게 처리하는 게 좋을 듯하여 그 절차를 올려봅니다. 폐업은 폐업 신고와 함께 폐업 후 절차까지 모두 마쳐야 불이익이..
goodthings4me.tistory.com
유튜브 영상 등의 URL 주소를 QR코드로 만들기
네이버 QR코드, makeQR, MUST QRcode, 무료 온라인 QRCode 생성기 등의 웹사이트에서 유튜브 영상 등의 URL을 입력하여 QR코드를 만들 수 있다. QR코드를 생성할 수 있는 사이트와 프로그램 URL 주소를 붙여넣기 한 후 "QR 코드 생성" 버튼을 클릭하면 큐알코드가 이미지로 생성되고, 다운로드도 할 수 있는 사이트 https://truedoum.com/useful/qrcode/ # 유튜브에서 동영상 URL을 복사하는 방법 유튜브에서 QR코드를 만들 동영상을 검색한다. 해당 동영상을 클릭한다. 동영상 위에서 마우스 우클릭 후 나오는 팝업창에서 “동영상 URL 복사”를 클릭하거나 영상 하단의 “공유”를 클릭하여 나온 창에서 URL를 복사한다. 아래의 웹사이트 중 하나를 선택한 후 복사..
goodthings4me.tistory.com
'코딩 연습 > 코딩배우기' 카테고리의 다른 글
[python] 파이썬 재귀함수, 람다 함수 연습 (0) | 2020.09.21 |
---|---|
[python] 파이썬 datetime(), time(), localtime() (0) | 2020.09.20 |
[python] 파이썬의 변수, 객체, 그리고 참조 주소 (0) | 2020.09.19 |
[python] 파이썬의 진수 변환(2진수, 8진수, 10진수, 16진수) (0) | 2020.09.18 |
[python] 파이썬 스태틱(static) 메서드와 클래스(class) 메서드 (0) | 2020.09.17 |
댓글