python

[python] 함수 개념

전감자(◔◡◔) 2022. 9. 22. 22:09
'''

함수 기본 개념

'''

print("1")

def fun(): # 헤더
    print("fun") # body
    return "aa" # foot

m = fun()
print(m)
n = fun()
print(n)
print(fun())
n = int("10")
print(n)
print(int("10"))
print("end")
print("1")

def fun(n): # 헤더
    print("fun",n) # body
    return "aa" # foot

m = fun(10)
print(m)
n = fun("hello")
print(n)
print(fun([10,20]))
print("end")

 

parameter를 받아들임

'''
함수 기본 개념

# 문자열 연결하는 함수
'''

def str_conncat(s1,s2):
    s_result = s1 + s2
    return s_result

result=str_conncat("hello","world")
print(result)
result=str_conncat("Java","Python")
print(result)

 

parameter에 디폴트 값 설정

'''
함수 기본 개념

# 문자열 연결하는 함수
'''

def str_conncat(s1,s2=""):
    s_result = s1 + s2
    return s_result

result=str_conncat("hello","world")#default parameter
print(result)
result=str_conncat("Java","Python")
print(result)
result=str_conncat("Java")
print(result)

 

대입 연산자로 직접 값을 넣어 줄 수도 있음 

'''
함수 기본 개념

# 문자열 연결하는 함수
'''

def str_conncat(s1,s2):
    s_result = s1 + s2
    return s_result

result=str_conncat(s1="hello",s2="world")#default parameter
print(result)
result=str_conncat(s2="Java",s1="Python")#중요
print(result)
# 1.반드시 갯수가 일치해야 된다.
def fun():
    pass

fun()
# fun(10)

# 2. 기본값 지정하면 불일치 가능
def fun2(n,n2=10):
    pass

fun2(10)
fun2(10,20)

# 3. packing 지정하면 불일치 가능
def fun3(n,n2,*n3):
    print(n,n2,n3)

fun3(1,2,3,4,5,6)


# 4. dict packing 지정하면 불일치 가능
def fun4(**xxx):
    print(xxx)

fun4(name="홍", age=20)


# 5.  *, ** 혼합
def fun5(*x, **y):
    print(x, y)

fun5(1,2,3,4,5,6, name="홍", age=20)

def fun5(n, n2, *x, **y):
    print(n,n2, x, y)

fun5(1,2,3,4,5,6, name="홍", age=20)