반응형
일정 시간마다 반복적으로 수행되도록 하는 프로그램에 대해 설명해드리겠습니다.
- RPI(Raspberry PI)나 아두이노 프로그래밍할 때 유용하게 사용 가능합니다.
1. schedule 라이브러리 이용하여 일정 주기마다 함수가 동작하도록 구현
schedule.every(시간(초단위)).seconds.do(함수)
2. 반복문을 통해 프로그램 실행
while True:
schedule.run_pending()
...
위의 명령어만 있으면 일정 시간마다 함수가 수행되도록 수현할 수 있습니다.
물론 threading.Timer 를 이용해도 무관합니다.
예제 코드
import schedule
import time
data = []
i = 0
def show_data():
global data
global i
print(data)
data = []
i = 0
schedule.every(1).seconds.do(show_data)
while True:
schedule.run_pending()
i += 1
data.append(i)
time.sleep(0.1)
<코드설명>
- 전역변수(리스트) data에 전역변수 i를 0.1초에 1씩 증가시키면서 append(붙이기) 수행
- 1초 주기로 data 리스트 출력 후 초기화
그러면 1초 주기로 아래와 같이 출력이 됩니다!
추가 질문사항 또는 잘못된 사항이 있으면 댓글 남겨주세요
반응형
'programming > python' 카테고리의 다른 글
(python) SMS 보내기(with SENS) (0) | 2023.03.30 |
---|---|
(pyenv) 파이썬 가상환경 설치(with pyenv) (0) | 2023.03.02 |
(datetime) 파이썬 날짜 변환 (날짜 -> 나노세컨드 -> 날짜) (0) | 2023.01.26 |
(socket) 파이썬 소켓 통신 (0) | 2023.01.25 |
(matplotlib) 파이썬 실시간 그래프 출력 (0) | 2023.01.25 |