제가 만든 프로젝트에서 사용하는 라이브러리가 있습니다. 라이브러리의 클래스 중 하나는 itertools를 사용하여 인스턴스화 될 때마다 증가하는 ID (현재 1부터 시작)를 생성합니다. 라이브러리를 사용하는 서버 데몬의 주 루프에서 알려진 ID를 기반으로 라이브러리에서 증가가 시작되는 위치를 초기화 할 수 있기를 원합니다. 이것은 데몬을 시작하고 중지 할 때 ID가 중단 된 곳에서부터 선택할 수 있습니다. 데몬은 db 백엔드에 대한 SQL 쿼리를 사용하여 올바른 시작점을 결정할 수 있지만 시작점으로 사용할 라이브러리에 전달하는 방법을 알 수는 없습니다. 현재 도서관에서 데이터베이스 쿼리에서 라이브러리의 itertools 개수를 초기화하십시오.
:class Thing(object):
id_iter = itertools.count(1)
def __init__(self):
self.id = self.id_iter.next()
나는 첫 번째 인스턴스의 클래스로 전달 될 수있는 변수에 1을 대체하고 싶습니다. 어떤 생각? 다른 접근법?
처음으로 클래스의 인스턴스가 생성되면 ID가 설정된다는 것을 의미합니까? – Bakuriu
서버가 시작될 때마다 db의 시작점을 결정하고 클래스 반복기 (라이브러리에 있음)의 시작점을 초기화하기 위해이 값을 전달해야합니다. – domoarrigato