[내일배움캠프] Python 기초 이론 (3)

셔닝🧸·2025년 5월 30일
0

오늘의 학습

  1. 함수

[함수 종류]

 ➖ 내장 함수(built -in function): 사전에 정의된 함수

  • len(): 자료형 길이 측정
  • print() : 변수 출력

➖ 사용자 정의 함수(user define function): 내가 필요해서 만든 함수


[함수 구성요소]

def 함수이름 (매개변수1, 매개변수2):
		수행할_코드1
		수행할_코드2
		return 결괏값

➖  함수에서 봐야 할 3가지

  • input: 매개변수, 파라미터
  • 코드블록
  • output: 결괏값, 리턴값, 출력값, 반환값

def 함수 만들 때 사용하는 예약어 (define)
➖ 함수 이름 뒤 괄호 안 매개변수는 이 함수에 입력으로 전달되는 값을 받는 변수
➖ 함수 정의 후 if, while, for문 등과 마찬가지로 함수에서 수행할 문장 입력

def add(a, b) #add가 내가 만드려는 함수 이름 
		return a + b # add함수는 매개변수인 a랑 b를 더하는 것이란 의미, 리턴값(출력값)이 2개의 입력값을 더한 값
	
print(add(12, 23)) # 출력값 35
print(add("ab", "bc")) # 출력값 abbc

[return과 print]

➖ return: 정의된 함수를 호출한 결과로 반환(return) 받는 값
➖ return 기능

  • 함수를 바로 종료 시키면서 반환할 값 정의
  • 지정하지 않으면 None 출력

➖ 함수가 반드시 어떤 값을 return 할 필요 X (기본적으로 return None O)
➖ 활용 사례 : 광고 예산 대비 클릭 수 분석 시 CTR 계산하는 함수 작성 필요

  • return 사용해서 결괏값 출력
  • print 사용해서 결괏값 출력
    ➡️ 결괏값 출력 후 비교
# return 사용: CTR 계산 결과 돌려줌
def get_ctr(clicks, impressions): # get_ctr 함수로 지정 # clicks, impressions 매개변수
		ctr = clicks / impressions * 100 # ctr 구하는 방법
		return ctr # return 시 ctr 구하는 방법으로 리턴값 도출
		
a = get_ctr(50, 1000) # a는 광고 1 클릭률 계산 후 저장
print("a 변수에 저장된 CTR 값:", a) 
# 출력값: a 변수에 저장된 CTR 값: 5.0 


#print 사용: ctr 그냥 출력만 함
def show_ctr(clicks, impressions):
		ctr = clicks / impressions * 100
		print(f"ctr: {ctr}%") # print 시 ctr이 몇 % 인지만 출력 가능
		
b = show_ctr(50, 1000)
print("b 변수에 저장된 CTR 값", b) 
# 출력값: ctr: 5.0%   b 변수에 저장된 CTR 값 None

➡️ return 사용 시 CTR 계산한 결과 출력하고 저장하여 활용 가능
➡️ print 사용 시 CTR 값 출력만 가능


[함수 추가 정보]
➖ 파라미터 없는 함수

def say():
		return 'Hi'

➖ 여러 개 값 return
: 반환값이 여러 개일 경우 반환하는 결과형 = Tuple(튜플)

def add3(a,b):
		result = a + b
		return result, result**2
		
print(add3(3,4)) # 출력값: (7, 49)

➖ 지역변수
: 반복문과 유사하게 함수 안에서 선언된 함수는 함수 내부에서만 사용
⭐️ 함수 밖에서는 접근 불가

def get_sqaure(x):
		a = 3
		return x, x**2
		
print(a) # 출력값: 5.0 --> error

# 4 print(a)
# NameError: name 'a' is not defined

➖ 전역변수
: 함수 밖에서 선언된 변수는 함수 안에서 활용 가능 (읽기만 가능)

b = 3
def get_square():
		return b**2
	
get_square() # 출력값: 9 

🔻🔻🔻 함수 안에서도 전역변수 값 바꾸려면 global이라는 키워드 사용해야 수정 가능

budget = 1000 # 전역 변수 (광고 예산)

def spend_money():
		global budget # 전역 변수를 수정하려면 반드시 global 선언 필요
		budget -= 200
		print("200만 원 지출 후 남은 예산:", budget)
		
spend_money()
print("현재 남은 총 예산:", budget)

# 출력값: 200만 원 지출 후 남은 예산: 800
# 출력값: 현재 남은 총 예산: 800
profile
어떻게든 하겠숴여...❕

0개의 댓글