전체 글 썸네일형 리스트형 Fluent Python (챕터1) 파이썬 데이터 모델 기본적인 객체 연산을 수행할 때, 파이썬 모델이라는 것이 제공하는 API 를 통해 파이썬 상용구를 적용할 수 있다. 이는 파이썬스러움(pythonic)의 핵심이다. 이 파이썬 모델을 사용할 때, 파이썬 인터프리터에서 특별한 구문을 호출한다. magic method(dunder method) 가 이 특별한 구문이며 이를 명확하게 이해하면, 구현한 객체를 좀 더 다양하게 활용할 수 있다. import collections Card = collections.namedtuple("Card", ["rank", "suit"]) class FrenchDeck: ranks = [str(n) for n in range(2, 11)] + list("JQKA") suits = "spades diamond.. 더보기 slack - SSL Certification Error 슬랙을 연동하기 위해서 토큰 값과 채널을 설정하고 로컬에서 테스트 했다. 문제가 없어서 배포를 했더니 SSL Certification Error 발생 원인 ca-certification 이 없기 때문이다. 로컬에는 기본적으로 브라우저에서 CA 의 공개키를 가지고 있기도 하고, 맥 os 는 키체인에 있는 편이다. 현재 배포 프로세스상 AWS ECR 은 이미지 레포를 관리해주며, 해당 이미지를 rancher 에 배포한다. 도커 이미지 기준이므로 Dockerfile 에 ca-certification 설치 및 여러 설정을 추가해야 한다. python 코드 상에서 ssl context 를 생성하고, verify_mode 를 CERT_NONE 으로 해줘도 된다. 하지만 보안 상 인증서를 받는 것이 더 좋은 방법으로.. 더보기 ChainMap 여러 dict 를 한 번에 담아서 볼 수 있다. from collections import ChainMap dict1 = {"name": "os", "age": 99, "email": "test@example.com"} dict2 = {"job": "developer"} result = ChainMap(dict1, dict2) for k, v in result.items(): print(k, v) > jon developer name os age 99 email test@example.com 굳이 리스트에 담아서 다시 반복문을 돌릴 필요 없이 간단하게 접근할 수 있다. 더보기 array 로 생성, 저장, 로딩 엄청 큰 숫자 시퀀스 자료가 있는 경우 이를 생성하고 저장, 및 로딩하는 과정에서 array 를 활용하면 매우 빠르게 처리할 수 있다. from random import random from array import array from time import perf_counter as pc create_time = pc() test_float = array("d", [random() for _ in range(10 ** 7)]) print("생성 소요시간 :", pc() - create_time) save_time = pc() with open("abcd_test.bin", "wb") as file: test_float.tofile(file) print("저장 소요시간 :", pc() - save_time.. 더보기 슬라이스와 범위 지정 시에 마지막 항목이 포함되지 않는 이유 파이썬에서 인덱스를 활용한 슬라이싱을 사용하는 경우 list[start:end] 같이 표현한다. 이 때, start 부분은 포함되지만 end 부분은 포함되지 않는다. 이에 대하여 네덜란드 컴퓨터 과학자 다익스트라는 다음과 같은 이유를 들었다. 범위의 맨 앞 혹은 맨 뒤 값은 반드시 포함해야 한다. 우선 반드시 이상/미만 혹은 초과/이하 형태여야 한다. 그래야 두 수의 차를 통해서 몇 개의 값이 들어있는지 직관적으로 알 수 있다. 그럼 그 형태가 왜 꼭 이상/미만이어야 하는가? 시작점이 포함되어야 하는 이유? 만약 자연수의 범위를 표현하고자 할 때, 초과인 경우 최소 자연수인 1을 포함시키기 위해서 0초과 n이하으로 표현해야 한다. 이 때, 자연수가 아닌 수를 통해서 자연수의 범위를 표현하는 부자연스러운 .. 더보기 이전 1 2 3 4 5 다음