본문 바로가기
빅데이터 부트캠프/Python

빅데이터 부트캠프 7일차

by Mecodata 2022. 7. 12.

함수(function)

- def 함수이름(변수, ...): 꼴로 함수 정의

- 파괴적인 함수 : 원본을 바꾸는 함수

ex) a = input()

- 비파괴적인 함수 : 원본을 바꾸지 않고 주어진 명령으로 바뀐 결과를 출력하는 함수

ex) a.lower()

- return = 지정한 값 출력후 종료 (break와 비슷)

가변인자(*)

- def 함수이름(*변수): = 출력시 튜플 형식으로 출력

- 함수를 정의에 의해 실행되는 print()안에 변수가 *변수 형식으로 입력되면 각각의 독립적인 데이터로 취급

- 함수를 정의에 의해 실행되는 print()안에 변수가 변수 형식으로 입력되면 각각의 데이터를 하나의 튜플로 취급

- def 함수이름(**변수): = 출력시 딕셔너리 형식으로 출력

- ex) def print1(**i):

              i['c'] = 3 (이때, i는 딕셔너리로 인식되어 다음과 같이 딕셔너리 내에 데이터를 추가할 수 있음)

              print(i) 

        print1(a=1,b=2) -> {'a' : 1, 'b' : 2, 'c' : 3}

언패킹(unpacking)

- 하나의 튜플이나 리스트로 묶여있는 데이터들을 독립적으로 풀어내는 것

- list가 주어졌을때 각 데이터를 다른 변수로 지정하여 언패킹 가능

ex) list1 = [190, 85] 

      h, w = list1 -> h = 190, w= 85로 출력

- list가 주어졌을때 *와 데이터의 순서를 이용하여 특정 데이터를 제거한뒤 출력할 수 있음

- ex) list1 = [1,2,3,4,5,6] 

        a, b, *list2 = list1 (a와 b가 아닌 어떤 문자를 입력해도 같은 결과값이 출력되지만 반드시 string로 입력!)

        list2 = [3,4,5,6] (첫번째와 두번째 데이터가 제거 후 출력)

        ㄱ, *list3, ㄴ = list1

        list3 = [2,3,4,5] (첫번째와 마지막 순서의 데이터 제거 후 출력)

       

       tu1 = (1,2,3,4,5,6) (원본이 리스트가 아니라 튜플이어도 가능하지만 tu2나 tu3는 리스트 형식으로 출력됨)        

       a, b, *tu2 = tu1 

       tu2 = [3,4,5,6] (첫번째와 두번째 데이터가 제거 후 출력)

       ㄱ, *tu3, ㄴ = tu1

       tu3 = [2,3,4,5] (첫번째와 마지막 순서의 데이터 제거 후 출력)

댓글