<aside> 💡 - 반복되는 코드들을 함수로 만들다!!
</aside>
def custom_function_name(parameter1, parameter2, ...):
"""
Description:
:param
:output:
:return:
"""
# write_something
return something
"""
예시1. Hello를 출력하는 함수
:param:
:output: Hello!
:return:
"""
def sayHello():
print("Hello!\\n")
sayHello() # Hello!
"""
예시2. 입력받은 문자를 출력하는 함수
:param user_word: 사용자에게 입력받는 단어
:output: 입력받은 단어를 출력
:return:
"""
def sayWord(user_word: str):
print(f"input word is {user_word}!!\\n")
word = input("아무단어를 입력하세요!: ") # 호랑이
sayWord(word) # input word is 호랑이 !!
"""
예시3. 입력받은 문자를 반환하는 함수
:param:
:output:
:return: 사용자가 입력한 단어
"""
def inputWord() -> str:
return input("아무단어를 입력하세요!: ")
print(inputWord())
"""
예시4. 나누기 함수
:param numerator:
:param denominator:
:return: a / b
"""
def fraction(numerator, denominator) -> float:
return numerator / denominator
result = fraction(20, 10) # 2
result = fraction(denominator = 10, numerator = 20) # 2
"""
예시5. 모두 더하는 함수
:param *many_inputs: 불특정 숫자들
:return: sum of many_inputs
"""
def total_sum(*many_inputs):
total = 0
for n in many_inputs:
total += n
return total
result = total_sum(1,2,3,4,5,6,7,8,9,10) # 55
"""
예시6. 정렬하는 함수
:param *many_inputs: 불특정 숫자들
:return: sum of many_inputs
"""
def sort(mode: str, *numbers) -> list:
numbers = list(numbers) # 입력받은 인자들을 list로 변환!
input_size = len(numbers)
if mode == "increase":
numbers.sort()
elif mode == "decrease":
numbers.sort(reverse=True)
else:
print("invalid index! usage: [mode] [number1, ...]\\n")
return
return numbers
sorting("increase", 10, 9, 5, 2, 6, 7) # [2, 5, 6, 7, 9, 10]
num = [1, 54, 5, 2, 6, 8, 98, 6, 23]
sorting("increase", *num) # unpacking!!