본문 바로가기

PYTHON

Set, 집합, Function, Parameter, Argument, Return 개념

Set

- 유일한 값들의 집합

- key만 있는 dictionary

- key는 유일해야 함

- 중복이 될 경우, 하나의 값만 저장한다.

 

- empty set

변수 = set()

    ex) empty_set = set()

         empty_set

         >>> set()

 

* empty dictionary
변수 = {}
변수 = dict()

 

 

- set 함수

    항목 추가 : color_set.add('red')

    여러 항목 추가 : coloe.set.update('green','blue')

    항목 삭제 : color_set.remove('blue') # 없으면 error

                   color_set.discard('blue') # 없어도 error가 나지 않는다.

 

* string 함수

index함수의 경우 값이 없으면 error

find함수의 경우 없는 값이면 -1

집합

a&b 교집합

a\b 합집합

* 참고 : https://dojang.io/mod/page/view.php?id=2315

Built-in Fuctions

define : 힘수를 정의

call : 함수를 가져다 쓰는것

    find()

    copy()

 

User Definde Fuctions

Fuctions 정의

def 함수명 (매개변수) :
    #statements block, 결과 계산등
    return res #반환값

def 함수명 (매개변수,) :
    #statements block, 결과 계산등
    print(인자)

    - Parameter(매개변수) : 함수에서 입력 값을 받는 변수, 함수에서 정의한 변수

    - argument(인자) : 함수를 사용할 때, 입력을 주는 변수의 이름

     * 키워드 인자는 위치인자 앞에 올 수 없다.

    - return value (리턴값) : 함수의 출력값

 

Fuctions 사용

함수명()

 

#실습
#이름 앞에 hello, 를 붙여주는 함수 (void)
def greet(name):
    print('Hello, ',name)
    print('Welcome, Pyton Class')

greet('손서연')

# >>> Hello,  손서연
#     Welcome, Pyton Class

 

함수 실습1

#Exercise
#avg 함수
#입력매개변수: 5개의 숫자

#process
#매개변수로 받은 4개숫자의 평균을 계산해서 출력

#list를 매개변수로 받는 함수

def avg(numList):
    return sum(numList)/len(numList)

"""
def avg(numList):
    result = 0
    for i in numList:
        result += i
    return result/len(numList)
"""

# num = []
# list assignment index out of range : 빈리스트여서 index가 존재하지 않음.
num=[0 for i in range(5)]
for i in range(5):
    num[i] = int(input())

print(avg(num))

 

 

Parameter

default value(매개변수 기본값)

- 매개변수에 값을 넘기지 않아도 기본값이 들어간다.

def hi(x, y='Hello'):
    print(x,y)

hi("John", "Good morning")
hi("Kim")

# >>> John Good morning
#     Kim Hello

 

argument

키워드 인자 실습

def mult(num1, num2):
    return num1*num2

mult(100,num2=3) # O
mult(num1=100,num2=3) # O
#mult(num1=100,3)      # X 위치인자가 키워드인자 앞에 위치해야 함

 

*

- 1개 이상의 위치 인자를 tuple로 묶음

- *args

def print_args(*args):
    print(args)
    
print_args(1,2,3,4,5)
# >>> (1, 2, 3, 4, 5)

 

**

- 키워드 인자를 dictionary로 묶음

- **kwargs

def print_kwargs(**kargs):
    print(kargs)
    
print_kwargs(ID=1234, Name='Kim')
# >>> {'ID': 1234, 'Name': 'Kim'}

return

multiple returns

def addTwo(a, b):
    s = a + b
    return a,b,s
    
x,y,z = addTwo(2,3)
print(x,y,z)
# >>> 2 3 5

# 더미 변수 : _ 
# 만약 값을 하나만 받고싶다면
# _, _, z = addTwo(2,3)

 

#사칙연산 함수
def calculator(a,b,operator):
    if operator == '+':
        return a+b
    elif operator == '-':
        return a-b
    elif operator == '*':
        return a*b
    elif operator == '/':
        if b == 0:
            return "0으로 나눌 수 없습니다."
        else:
            return a/b

c = calculator(3,2,'+')
d = calculator(4,5,'*')
print(c,d)

'PYTHON' 카테고리의 다른 글

Pandas  (0) 2021.12.03
File I/O, 예외처리 개념  (0) 2021.11.19
Docstring, Scope, Module, File I/O 개념  (0) 2021.11.12