본문 바로가기

분류 전체보기261

[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.
[python] map 함수 안녕하세요. TDR입니다. 오늘은 python에서의 map 함수에 대해서 정리해 보겠습니다. ## 기본 구조 # FUNCTION : 함수들 # ITERABLE_OBJECT : 반복 가능한 객체. e.g. list, string, tuple, etc... map_class = map(, ) ## Example 01 a = [1, 2, 3] b = map(str, a) # b = ['1', '2', '3'] ## Example 02 def square (x): return x*x a = [1, 2, 3, 4] b = list(map(square , a)) # b = [1, 4, 9, 16] ## Example 03 # 아래 for문과 동일 b = list(map(square , a)) # 위 map과 동일 .. 2024. 1. 25.
[python] Dictionary 안녕하세요. TDR입니다. 오늘은 python에서의 dictionary(딕셔너리) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. ## 생성 dic_object = {} dic_object = dic() dic_object = {'a': 1, 'b': 2, 99: 'nine'} ## 삽입 dic_object['c'] = 3 dic_object.setdefault('d') = 4 ## 읽기 dic_object['d']# 4 dic_object.get('d') # dict에 key 'x'가 없을 때 100을 반환 dic_object.get('x', 100) ## 수정 # 하나만 수정할 경우 dic_object['c'] = 5 # key 값이 string이여도 아래와 같은 표기 가능 dic_object.up.. 2024. 1. 24.
[한글] 각출 vs 갹출 안녕하세요. TDR입니다. 오늘은 한국어 중에 비슷한 듯 하면서 미묘하게 다른 뜻을 가지고 있는 두 단어를 비교해 간단히 정리해보겠습니다. 우선 사전적인 의미를 보면 다음과 같습니다. (출처 : Naver 사전) 각출(各出) 각각 내놓음 갹출(醵出) 같은 목적을 위하여 여러 사람이 돈을 나누어 냄 쉽게 정리하면 다음과 같습니다. 각출(各出) 모든 사람이 동일한 금액을 내는 것. 즉, 흔히 말하는 더치페이 갹출(醵出) 모두 돈을 내는 것은 같으나, 여유가 있는 사람이 더 내고 여유가 없는 사람은 조금 내는 것 갹출의 "갹"이 "추렴할 갹"이기 때문에 갹출 대신 추렴하다로 순화하는 것이 좋다고는 하는데 개인적으로는 추렴도 생소하게 느껴지긴 합니다. 2024. 1. 19.
[python] Copy (Shallow vs Deep) 안녕하세요. TDR입니다. 오늘은 python에서의 copy(복사)에 대해 정리해 보겠습니다. import copy ori_object = [1, 2, [3, 4]] # 얕은 복사 01 cop_object = ori_object ori_object.append(6) # ori_object = [1, 2, [3, 4], 6] # cop_object = [1, 2, [3, 4], 5] # (약간) 얕은 복사 02 cop_object = ori_object[:] ori_object.append(6) # ori_object = [1, 2, [3, 4], 6] # cop_object = [1, 2, [3, 4]] ori_object[2].append(5) # ori_object = [1, 2, [3, 4, 5],.. 2024. 1. 19.
[python] Set - 02 안녕하세요. TDR입니다. Set - 01에 이어서 나머지 집합 연산을 정리해 보겠습니다. [python] Set - 01 안녕하세요. TDR입니다. 오늘은 python에서의 set(집합) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. 집합 연산이 많아 2번에 나눠서 정리하겠습니다. ## 생성 set_object = set() set_object = set([1, 2, tdremon.tistory.com ## 집합 연산 # 예시 값 s1 = {1, 2, 3} s2 = {3, 4, 5} # 대칭차집합 set_object = s1 ^ s2 set_obejct = set.symmetric_difference(s1,s2) # set_obejct = (s1 | s2) - (s1 & s2) # 연산 결과를 반환.. 2024. 1. 19.
[python] Set - 01 안녕하세요. TDR입니다. 오늘은 python에서의 set(집합) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. 집합 연산이 많아 2번에 나눠서 정리하겠습니다. ## 생성 set_object = set() set_object = set([1, 2, 3])# set_object = {1, 2, 3} set_object = set("apple")# set_object = {'a', 'p', 'l', 'e'} ## 삽입 # 하나의 값만 추가 가능 set_obejct.add(2) # 여러개의 값 추가 set_obejct.update({2, 4, 8}) ## 삭제 # 값이 없으면 KeyError 발생 set_obejct.remove(2) # 값이 없어도 Error 발생 안함 set_obejct.discard(.. 2024. 1. 19.
[python] Tuple 안녕하세요. TDR입니다. 오늘은 python에서의 tuple(튜플) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. ## 생성 # 값이 하나인 경우 반드시 , 을 써줘야 함 tuple_object = (1, ) tuple_object = (1, 2, 3) # 값이 여러개인 경우 () 생략 가능 tuple_object = 1, 2, 3 # tuple()로 생성할 때는 list 형태로 값을 넣어 줘야 함 tuple_object = tuple([1, 2, 3]) ## 특징 # list와 마찬가지로 여러 형태의 값을 넣을 수 있음 # tuple 안의 값들에 대해 수정, 삭제, 추가 불가능 (immutable object) # tuple_object = () or tuple_object = tuple() 과 .. 2024. 1. 16.
[python] List 안녕하세요. TDR입니다. 오늘은 python에서의 list(배열) 자료구조의 기본적인 것에 대해 정리해 보겠습니다. ## 생성 list_object = [] list_object = list() list_object = [1, 2, 3, 4] ## 삽입 # list 마지막에 value 추가 list_object.append(value) # index 위치에 value 추가 list_object.insert(index, value) # list_object += [5, 6]과 동일 list_object.extend([5, 6] ## 읽기 # 3을 읽음 re = list_object[2] ## 수정 # list_object = [1, 2, 5, 4]가 됨 list_object[2] = 5 ## 삭제 # i.. 2024. 1. 16.
[Docker] 00. 도커(Docker)란 무엇인가? 왜 필요한거지? 안녕하세요. TDR입니다. 오늘은 도커란 무엇이며 어떤 장점이 있어서 사용하는지에 대해서 설명해 볼까합니다. 우선 도커(docker)란, Linux기반에서 컨테이너(container)를 다루는 소프트웨어를 말합니다. 그리고 컨테이너란 데이터 또는 프로그램을 별도의 장소에 격리시키는 것입니다. 우리가 해외에 물류를 수입/수출 할 때 큰 배에 수 많은 컨테이너 별로 물건들을 넣는데 이와 동일합니다. (그래서 도커 이미지를 보면 고래 등에 컨테이너가 쌓여있는 이미지) 결국, 도커는 데이터 또는 환경등을 분리한 컨테이너를 컨트롤하는 소프트웨어입니다. 그럼 왜 도커를 써야할까요? 그건 시대가 변하여 예전보다 더 빠른 업데이트, 다양한 기능들을 요구하게 되면서 서버 리소스를 최대한으로 사용하면서도 빠른 개발, 빠른.. 2023. 4. 2.
[Docker] 06. Registry & Repository 정리 안녕하세요. TDR입니다. 저번에 Container와 Image에 대한 정리를 해보았는데 이번에는 이와 유사한 레지스트리(Registry)와 레포지토리(Repository)에 대해서 정리를 해보겠습니다. 우선 각 의미를 보면, 레지스트리(Registry)란? Docker image를 배포(보통 push)하는 저장소 레포지토리(Repository)란? 레지스트리를 구성하는 단위 이렇게만 쓰면 무슨 말인지 감이 잘 안오겠지만 예시를 보면 쉽습니다. Ex) registry-name/repository-name 이런 형태를 가지게 됩니다. 즉, 하나의 레지스트리 안에는 여러개의 레포지토리를 가질 수 있습니다. 실무에서의 예를들면 회사에서 A라는 서비스와 B라는 서비스를 레지스트리에 저장한다고 했을 때, 개발(d.. 2023. 3. 30.
[Docker] 04. Network & Volume 명령어 정리 안녕하세요. TDR입니다. 저번에 Container & Image 명령어를 정리했고 마지막으로 잘? 거의? 사용되지 않지만 서버 엔지니어나 인프라 엔지니어가 알아두면 도커의 활용도를 높일 수 있는 명령어들을 정리해 볼까 합니다. 각 명령어의 개수가 많지 않고 비중도 높지 않아 한번에 정리합니다. Network Commnad 최신 명령어 내용 network connect 실행 중인 컨테이너를 network create 커맨드로 생성한 네트워크에 접속 network create 도커 엔진 내부에서 컨테이너끼리 통신할 수 있는 네트워크를 생성 network disconnect 지정한 컨테이너를 네트워크에서 접속 해제 network inspect 지정한 네트워크의 상세 정보를 출력. 해당 네트워크에 부여된 네트.. 2023. 3. 30.