최근 Google API를 사용할 때 하루 호출량 제한에 걸려서 곤란한 적이 있었습니다. 서비스 계정을 여러 개 만들어서 순차적으로 돌리면 되겠다! 싶었는데, 매번 계정을 바꾸는 코드가 너무 지저분해서 다른 방법이 없을까 찾아보다가 itertools.cycle()를 발견했습니다. 반복 가능한 객체를 무한히 순환할 수 있는 함수였는데 오늘은 이 함수와 제가 활용한 코드를 예시로 소개하고자 합니다. itertools.cycle(iterable)기본 개념itertools.cycle(iterable)은 주어진 iterable을 무한히 반복하는 반복자(iterator)를 만들어줍니다. 한번 순회한 값을 메모리에 저장해두고, 마지막까지 순회한 뒤에는 다시 처음부터 반복해요.사용방법iterable 객체를 cycle..
python
파이썬으로 여러 프로젝트를 하다 보면 자주 사용하는 함수들이 생깁니다. 저는 보통 utils.py 같은 파일에 복붙해서 쓰곤 했는데요, 문득 "이걸 pip로 설치해서 쓰면 어떨까?" 하는 생각이 들었습니다. 찾아보니 정말 가능하더라구요. setup.py 하나면 됩니다.setup.py로 패키지 만들기1. 패키지 폴더 만들기먼저 자주 사용하는 함수를 하나의 폴더에 정리합니다. 예를 들어 myutils 폴더를 만들고 그 안에 __init__.py와 functions.py를 넣습니다.myutils/├── __init__.py└── functions.py # 자주 쓰는 함수들 2. setup.py 작성하기최상위 디렉토리에 setup.py 파일을 생성합니다. 예시는 아래와 같습니다.# setup.pyfrom se..
':=' 연산자란?Python 3.8부터 새로 추가된 := 연산자는 할당 표현식(Assignment Expression)이라고 불립니다. 이 연산자를 사용하면 변수를 선언하면서 동시에 값을 검사하거나 사용할 수 있는 문장을 작성할 수 있습니다.기존에는 값을 변수에 할당하고 그 값을 조건문이나 반복문에서 따로 사용하는 방식이었지만, :=를 사용하면 더 간결하게 코드를 작성할 수 있습니다.이 연산자는 '바다코끼리 연산자(Walrus Operator)'라고도 불리며, 모양이 바다코끼리 얼굴처럼 생겼다고 해서 붙여진 이름입니다. 기본 사용법if (n := len("Hello")) > 3: print(f"문자열 길이는 {n}입니다.")설명:len("Hello")의 결과를 바로 n에 저장하면서,그 값을 조건식..
파이썬으로 날짜를 다룰 때는 datetime 모듈도 있지만, 더 유연하고 강력한 기능을 원한다면 pandas의 시간 도구를 추천합니다. 오늘은 pandas의 MonthEnd를 사용해서 특정 날짜가 속한 달의 마지막 날(말일) 을 구하는 방법을 알아볼게요.🧩 코드 예시import pandas as pdstart_date = pd.Timestamp('2024-03-15') # 3월 15일end_date = start_date + pd.offsets.MonthEnd(0) # 3월 31일이 됨print(end_date) # 2024-03-31start_date = pd.Timestamp('2024-02-01') # 2월 1일end_date = start_date + pd.offsets.MonthEnd(..