Technologieaustausch

Python-Übung: Implementierung eines visuellen dynamischen Weckers mit Weckerfunktion

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


✨✨ Willkommen auf Srluas Blog (づ ̄3 ̄)づ╭~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:Python

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

​​

​​

Inhaltsverzeichnis

Dynamischer Wecker

PyInstaller-Bibliothek

Laufbeispiel:

Richte einen Alarm ein:

Packen Sie zuerst die Dateien

Kann auf den Desktop gezogen werden~

win+R, cmd eingeben

Geben Sie in der Befehlszeile python clock.py 22-28 ein

Vollständiger Code:


Implementieren Sie einen dynamischen Wecker mit Python

Die Hauptfunktionen sind wie folgt:
1. Verwenden Sie Grafikzeichnungsbibliotheken wie Turtle, um eine dynamische digitale Röhrenuhr zu zeichnen, bei der die Stunden, Minuten und Sekunden durch unterschiedliche Farben unterschieden werden.
2. Sie können den Wecker über die Tastatur einstellen, um Popup-Erinnerungen im Fenster zu aktivieren.
3. PassenPyInstaller Konvertieren Sie die Bibliothek in eine ausführbare Datei.

PyInstaller Bibliothek

PyInstaller ist eine Bibliothek zum Packen von Python-Anwendungen in eigenständige ausführbare Dateien.

Es kann Python-Skripte und zugehörige Abhängigkeiten (z. B. Bibliotheken, Ressourcendateien) in eine einzige ausführbare Datei packen, sodass Benutzer Anwendungen ausführen können, ohne einen Python-Interpreter oder zugehörige Bibliotheken installieren zu müssen. Mit PyInstaller können Sie ganz einfach plattformübergreifende ausführbare Dateien erstellen, die mehrere Plattformen wie Windows, Mac und Linux unterstützen.

Laufbeispiel:

Richte einen Alarm ein:

Packen Sie zuerst die Dateien

Kann auf den Desktop gezogen werden~

win+R, cmd eingeben

Geben Sie in der Befehlszeile python clock.py 22-28 ein

Clock.py ist der Dateiname. Wenn der Dateiname unterschiedlich ist, ändern Sie ihn entsprechend dem tatsächlichen Dateinamen.
Es bedeutet eine Erinnerung um 22:28

Vollständiger Code:

  1. from turtle import *
  2. from datetime import datetime
  3. import time
  4. import sys
  5. from tkinter import messagebox, Tk
  6. def drawGap():
  7. penup()
  8. fd(5)
  9. def drawLine(draw):
  10. drawGap()
  11. pendown() if draw else penup()
  12. fd(40)
  13. drawGap()
  14. right(90)
  15. def drawDigit(d):
  16. speed(0)
  17. drawLine(True) if d in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)
  18. drawLine(True) if d in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)
  19. drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)
  20. drawLine(True) if d in [0, 2, 6, 8] else drawLine(False)
  21. left(90)
  22. drawLine(True) if d in [0, 4, 5, 6, 8, 9] else drawLine(False)
  23. drawLine(True) if d in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)
  24. drawLine(True) if d in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)
  25. left(180)
  26. penup()
  27. fd(20)
  28. def drawDate(date):
  29. pencolor('Red')
  30. for i in date:
  31. if i == "-":
  32. write('时', font=('Arial', 24, 'normal'))
  33. pencolor('Green')
  34. fd(40)
  35. elif i == '=':
  36. write('分', font=('Arial', 24, 'normal'))
  37. pencolor('Blue')
  38. fd(40)
  39. elif i == '+':
  40. write('秒', font=('Arial', 24, 'normal'))
  41. else:
  42. drawDigit(eval(i))
  43. def main(alarm_time=None):
  44. setup(800, 350, 200, 200)
  45. hideturtle()
  46. pensize(8)
  47. tracer(False) # 设置快速模式
  48. root = Tk()
  49. root.withdraw() # 隐藏主窗口
  50. while True:
  51. clear() # 清除之前绘制的内容
  52. penup()
  53. goto(-300, 0)
  54. current_time = datetime.now().strftime('%H-%M=%S+')
  55. drawDate(current_time)
  56. update() # 手动刷新屏幕
  57. if alarm_time and current_time.startswith(alarm_time):
  58. messagebox.showinfo("闹钟提醒", "时间到了!")
  59. alarm_time = None # 清除闹钟时间,防止重复提示
  60. time.sleep(1)
  61. if __name__ == "__main__":
  62. alarm_time = None
  63. if len(sys.argv) > 1:
  64. alarm_time = sys.argv[1] # 获取命令行输入的闹钟时间,格式为 HH-MM
  65. main(alarm_time)
  66. done()

Hoffe es hilft dir! Komm schon!

Wenn Sie den Inhalt dieses Artikels nützlich finden, geben Sie ihm gerne einen Daumen nach oben und abonnieren Sie ihn, um weiterhin wertvolle Informationen zu erhalten. Herzlichen Dank für Ihre Aufmerksamkeit und Unterstützung!