내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
✨✨ Srlua의 블로그에 오신 것을 환영합니다(づ ̄3 ̄)づ╭❤~✨✨🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。
我是Srlua小谢,在这里我会分享我的知识和经验。🎥
希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮
记得先点赞👍后阅读哦~ 👏👏
📘📚 所属专栏:파이썬
欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙
목차
명령줄에 python clock.py 22-28을 입력하세요.
주요 기능은 다음과 같습니다.
1. 거북이와 같은 그래픽 드로잉 라이브러리를 사용하여 시, 분, 초가 서로 다른 색상으로 구분되는 역동적인 디지털 튜브 시계를 그립니다.
2. 키보드를 통해 알람 시계를 설정하여 창 팝업 알림을 실현할 수 있습니다.
3. 합격파이 설치 프로그램 라이브러리를 실행 파일로 변환합니다.
PyInstaller는 Python 애플리케이션을 독립 실행형 실행 파일로 패키징하기 위한 라이브러리입니다.
Python 스크립트 및 관련 종속성(예: 라이브러리, 리소스 파일)을 단일 실행 파일로 패키징할 수 있으므로 사용자는 Python 인터프리터 또는 관련 라이브러리를 설치하지 않고도 애플리케이션을 실행할 수 있습니다. PyInstaller를 사용하면 Windows, Mac 및 Linux와 같은 여러 플랫폼을 지원하는 크로스 플랫폼 실행 파일을 쉽게 만들 수 있습니다.
clock.py는 파일 이름입니다. 파일 이름이 다를 경우 실제 파일 이름에 맞게 수정하세요.
22:28에 알림을 의미합니다.
- from turtle import *
- from datetime import datetime
- import time
- import sys
- from tkinter import messagebox, Tk
-
-
- def drawGap():
- penup()
- fd(5)
-
-
- def drawLine(draw):
- drawGap()
- pendown() if draw else penup()
- fd(40)
- drawGap()
- right(90)
-
-
- def drawDigit(d):
- speed(0)
- drawLine(True) if d in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)
- drawLine(True) if d in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
- drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
- drawLine(True) if d in [0, 2, 6, 8] else drawLine(False)
- left(90)
- drawLine(True) if d in [0, 4, 5, 6, 8, 9] else drawLine(False)
- drawLine(True) if d in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
- drawLine(True) if d in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
- left(180)
- penup()
- fd(20)
-
-
- def drawDate(date):
- pencolor('Red')
- for i in date:
- if i == "-":
- write('时', font=('Arial', 24, 'normal'))
- pencolor('Green')
- fd(40)
- elif i == '=':
- write('分', font=('Arial', 24, 'normal'))
- pencolor('Blue')
- fd(40)
- elif i == '+':
- write('秒', font=('Arial', 24, 'normal'))
- else:
- drawDigit(eval(i))
-
-
- def main(alarm_time=None):
- setup(800, 350, 200, 200)
- hideturtle()
- pensize(8)
- tracer(False) # 设置快速模式
-
- root = Tk()
- root.withdraw() # 隐藏主窗口
-
- while True:
- clear() # 清除之前绘制的内容
- penup()
- goto(-300, 0)
- current_time = datetime.now().strftime('%H-%M=%S+')
- drawDate(current_time)
- update() # 手动刷新屏幕
-
- if alarm_time and current_time.startswith(alarm_time):
- messagebox.showinfo("闹钟提醒", "时间到了!")
- alarm_time = None # 清除闹钟时间,防止重复提示
-
- time.sleep(1)
-
-
- if __name__ == "__main__":
- alarm_time = None
- if len(sys.argv) > 1:
- alarm_time = sys.argv[1] # 获取命令行输入的闹钟时间,格式为 HH-MM
- main(alarm_time)
- done()
도움이 되길 바랍니다! 어서 해봐요!
이 기사의 내용이 유용하다고 생각되면 언제든지 좋아요를 누르고 구독하여 귀중한 정보를 계속 받아보세요. 여러분의 관심과 지원에 진심으로 감사드립니다!