python
python 알고리즘 기초1 (유니코드, 클로저함수 기초)
멈머이
2023. 11. 14. 22:39
728x90
1. 유니코드
*문자열을 UTF-8로 인코딩하기
text = "안녕하세요"
encode_text = text.encode("utf-8")
encode_text
결과 : b'\xec\x95\x88\xeb\x85\x95\xed\x95\x98\xec\x84\xb8\xec\x9a\x94'
*문자열을 UTF-8로 디코딩하기
decode_text = encode_text.decode("utf-8")
decode_text
결과 : '안녕하세요'
2. 클로저
### 클로저 함수 정의하기
def outer_function(x):
# 내부 함수 정의 : 실제 실행되는 함수
def inner_function(y):
s = x+y
return s
return inner_function
### 클로저 함수 호출하기
closure_exe = outer_function(10)
print(closure_exe)
### 내부 함수 호출하기
resutl1 = closure_exe(5)
print(resutl1)
결과 : 15
중간중간 값과 주소를 찍어가며 확인해 보면
### 클로저 함수 정의하기
def outer_function(x):
print(f"#1 : x = {x}")
# 내부 함수 정의 : 실제 실행되는 함수
def inner_function(y):
print(f"#2 : y = {y}")
s = x+y
print(f"#3 : s = {s}")
return s
print("#4----------")
return inner_function
### 클로저 함수 호출하기
closure_exe = outer_function(10)
print(closure_exe)
결과 : #1 : x = 10
#4----------
<function outer_function.<locals>.inner_function at 0x000002D34F715B20>
closure_exe는 inner_funnction자체를 리턴 받으며 주소값을 가진다.
### 내부 함수 호출하기
resutl1 = closure_exe(5)
print(resutl1)
결과 : #2 : y = 5
#3 : s = 15
15
728x90