본문 바로가기

파이썬31

[python] 지역변수 & 전역변수 안녕하세요. TDR입니다. 오늘은 python의 조금 특이한 전역변수 및 지역변수 대해서 정리해 보겠습니다. global_var01 = 'global_var01' def main_func(): global global_var01 global global_var02 global_var02 = 'global_var02' main_var = 'main_var' global_var01 = 'edit sub_func : global_var01' print(main_var) # main_var def sub_func(): nonlocal main_var print(main_var) # main_var main_var = 'edit sub_func : main_var' print(main_var) # edit sub.. 2024. 2. 23.
[python] function(함수) - 02 안녕하세요. TDR 입니다. 지난번 함수 1부에 이어 가변인수, 키워드 인수 등에 대해서 정리해 보겠습니다. [python] function (함수) - 01 안녕하세요. TDR입니다. 오늘은 python function(함수)의 여러가지 사용법을 정리해 보겠습니다. Structure def 함수이름(매개변수들): ... return 반환값들 함수 선언은 def 키워드를 통해 이루어지고 다른 tdremon.tistory.com Variable argument(가변인수) def some_function(a, b, *args) print(a) # 1 print(b) # 2 for arg in args: print(arg) # 3, 4, 5 some_function(1, 2, 3, 4, 5) 함수를 작성하다보.. 2024. 2. 22.
[python] function (함수) - 01 안녕하세요. TDR입니다. 오늘은 python function(함수)의 여러가지 사용법을 정리해 보겠습니다. Structure def 함수이름(매개변수들): ... return 반환값들 함수 선언은 def 키워드를 통해 이루어지고 다른 언어와 다른 점은 python에는 변수의 타입을 지정하지 않기 때문에 반환 타입 역시 지정하지 않습니다. 그리고 return 값으로 여러개를 반환이 가능합니다! (이거 정말 편합니다!) def multi_return(): return 1, 2, 3 a, b, c = multi_return() # a = 1, b = 2, c = 3 result = multi_return() # type(result) : tuple, result = (1, 2, 3) 여러개의 return을 .. 2024. 2. 21.
[python] closure(클로저) 안녕하세요. TDR입니다. 오늘은 python에서 closure(클로저)라는 개념에 대해서 정리해 보겠습니다. closure란, 함수와 함수가 선언된 환경을 함께 가지는 개념을 말합니다. 이렇게 말하면 무슨 말인지 하나도 이해가 안가기 때문에 간단한 예시를 보면, def outer_function(x): y = 10 # 내부 함수를 정의하고 반환 (클로저) def inner_function(z): return x + y + z return inner_function # outer_function 호출. closure_func에는 inner_function이 저장되어 있음 closure_func = outer_function(5) # outer_function 내부에 있는 변수 y에 접근할 수 있음 pri.. 2024. 2. 17.
[python] lambda(람다) 안녕하세요. TDR입니다. 오늘은 python에서의 lambda를 사용하는 방법에 대해서 정리해 보겠습니다. 우선 lambda가 무엇인지 부터 알아보면 (언어마다 약간의 차이는 있지만) 간략한 익명함수를 생성하는 것을 말합니다. python에서도 간략한 한줄짜리 함수를 굳이 함수로 선언 안하고 간략하게 쓰고 싶을 경우 많이 사용합니다. 우선 lambda의 기본 형태를 먼저 살표 보겠습니다. # 기본 형태 lambda : # 기존 함수와 비교 def (): return 위 코드를 보시면 기존 함수와 비교했을 때, 과 return 키워드가 생략되었습니다. 즉, lambda는 함수의 이름을 가지지 않으며(익명 함수), 은 자동으로 return이 되는 것을 알 수 있습니다. python에서는 함수를 변수에 저장.. 2024. 2. 16.
[python] reduce 함수 안녕하세요. TDR입니다. 오늘은 python에서의 reduce 함수에 대해서 정리해 보겠습니다. reduce 함수는 쉽게 설명하면, 반복 가능한 객체에 저장된 숫자(numeric)들을 받아서 모두 더한 값을 반환해주는 함수 입니다. reduce를 쓰지 않고 일반적인 방법으로 구현을 한다면 아래와 같은 형태가 됩니다. def accumulate(x, y): return x + y list_obj = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # 값을 누적 시작 전의 초기값 설정 init_value = 1 res = init_value for i in list_obj: res = accumulate(res, i) print(res)# 46 위 코드를 reduce를 써서 변경을 하면 다음과 같.. 2024. 2. 15.
[python] filter 함수 안녕하세요. TDR입니다. 오늘은 python에서의 filter 함수에 대해서 정리해 보겠습니다. filter 함수는 앞에서 알아본 map 함수와 유사한 형태를 가지지만 차이가 있다면, 입력한 반복 가능한 객체 값에 대한 수정을 하는 것이 아닌, 조건에 맞는 값만 결과로 걸러준다는 차이가 있습니다. (그래서 함수 이름이 filter인 듯 합니다.) 먼저, filter 함수를 쓰지 않고 일반적인 방법으로 구현한 형태를 보면 다음과 같습니다. input = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] output = [] # 매개 변수가 짝수인 경우 True return def is_even(n): if n % 2 == 0: return True else: return False # input .. 2024. 2. 14.
[python] File I/O 안녕하세요. TDR입니다.오늘은 python에서 File Input / Output을 어떻게 하는지 간략하게 살펴 보겠습니다.File을 열 때 어떤 모드로 열지를 결정할 수 있습니다. 대표적인 형태로는 아래 4가지가 있습니다.File open moder : 읽기 모드w : 쓰기 모드a : 수정 모드x : 쓰기 모드. 배타적 생성으로 파일이 없으면 생성하고, 있으면 오류 발생 (FileExsitsError)File 읽기## 기본적인 형태 01file = open('input.txt', 'r') # input.txt 파일을 읽기모드(r)로 염line = Nonewhile line != '': line = file.readline() # file에서 한줄씩 읽어 들임file.close() #.. 2024. 2. 3.
[python] for 반복문 안녕하세요. TDR입니다. 오늘은 어느 언어에서만 많이 쓰이는 for 반복문을 Java와 비교해서 python에서는 어떻게 사용하면 되는지 정리해 보겠습니다. #### python에서의 for문 구조 for in : #### 일반적인 반복문 ## Java for (int i = 0; i < 10; i++) { System.io.println(i); } ## python # 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 for i in range(10): print(i) #### 특정 값 만큼 증가 ## Java for (int i = 0; i < 10; i = i + 2) { System.io.println(i); } ## python # 0, 2, 4, 6, 8 for i in range(0, 1.. 2024. 2. 2.
[python] String - 02 안녕하세요. TDR입니다. 오늘은 String-01을 이어서 정리해 보겠습니다. [python] String - 01 안녕하세요. TDR입니다. 오늘은 어느 언어에서만 많이 쓰이는 String을 python에서 어떻게 사용하면 되는지 정리해 보겠습니다. ## 선언 str_object = 'apple' str_object = "banana" # 작은 따옴표 3개를 쓰면 개 tdremon.tistory.com ## 문자열 배치 str_object = 'abcd' # .center() new_str = str_object.ljust(10)# 'abcd ' new_str = str_object.rjust(10)# ' abcd' new_str = str_object.center(10)# ' abcd ' new_s.. 2024. 1. 31.
[python] String - 01 안녕하세요. TDR입니다. 오늘은 어느 언어에서만 많이 쓰이는 String을 python에서 어떻게 사용하면 되는지 정리해 보겠습니다. ## 선언 str_object = 'apple' str_object = "banana" # 작은 따옴표 3개를 쓰면 개행을 포함한 그대로의 내용이 출력됨 str_object = '''How to write multi line text''' # 문열안에 \n 를 포함시켜도 개행 가능 str_object = "banana\nfruit" ## 문자열 바꾸기 str_object = 'I like apple' # .replace(, ) new_str = str_object.replace('apple', 'banana')# I like banana ## 문자 바꾸기 str_obje.. 2024. 1. 30.
[python] dictionary <-> json 안녕하세요. TDR입니다.오늘은 python에서 형태가 유사한 Dictonary와 json 간의 변환 및 각 특징에 대해서 알아보겠습니다.import json## 변환용 dict 정의dict_object = {'Key': 'Name', 'Value': 'Apple'}## dict를 json으로 변환# 만약 그냥 string으로 저장한다면# json_object = '''{# "Key": "Name",# "Value": "Apple"#}'''json_object = json.dumps(dict_object)## json format은 기본적으로 str 형으로 인식됨print(type(dict_object)) # print(type(json_object)) # #.. 2024. 1. 26.