Heim >Backend-Entwicklung >Python-Tutorial >1/4-Meile-Rechner, geschrieben in PyQt5 in Python

1/4-Meile-Rechner, geschrieben in PyQt5 in Python

WBOY
WBOYnach vorne
2023-08-17 11:59:501249Durchsuche

Die geradlinige Beschleunigung von 1/4 Meile ist eine gängige Messgröße zur Bewertung der Leistung von Autos und Motorrädern. Enthusiasten und Experten nutzen diese Distanz gleichermaßen, um die Beschleunigung und die Gesamtfähigkeit zu bewerten. In diesem Artikel erstellen wir einen einfachen 1/4-Meile-Schätzer mit PyQt5, einer bekannten Python-Bibliothek zum Erstellen grafischer Benutzeroberflächen (GUIs). Am Ende dieses Artikels verfügen Sie über einen voll funktionsfähigen 1/4-Meile-Schätzer, mit dem Sie die Leistung verschiedener Fahrzeuge bewerten können.

Warum PyQt5 als 1/4-Meile-Schätzer wählen?

PyQt5 ist eine leistungsstarke und vielseitige Bibliothek zum Erstellen von Desktop-Anwendungen in Python. Es bietet eine Reihe intuitiver Tools zum Generieren hochwertiger, benutzerfreundlicher GUIs, die auf mehreren Plattformen, einschließlich Windows, macOS und Linux, ausgeführt werden können. Aufgrund seiner Benutzerfreundlichkeit, plattformübergreifenden Kompatibilität und umfangreichen Dokumentation eignet sich PyQt5 besonders für die Entwicklung von Viertelmeilenschätzern.

Phasen der Erstellung eines 1/4-Meile-Schätzers in Python mit PyQt5

Installieren Sie PyQt5

Bevor wir beginnen, müssen wir PyQt5 installieren. Sie können dies mit pip (Python-Paketinstallationsprogramm) tun. Führen Sie einfach den folgenden Befehl aus -

pip install PyQt5

Notwendige Module integrieren

Kombinieren wir zunächst das grundlegende PyQt5-Modul mit dem integrierten Mathematikmodul von Python.

import sys import math from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QLineEdit, QPushButton

Entwickeln Sie Hauptanwendungsklassen

Erstellen Sie anschließend eine Hauptanwendungsfensterklasse, die von QWidget erbt. Diese Klasse enthält die Komponenten und das Layout unseres Schätzers.

class QuarterMileEstimator(QWidget): def init(self): super().init()

   # 初始化UI元素
   self.init_ui()

def init_ui(self):
   # 创建和配置UI元素
   layout = QVBoxLayout()

   self.title = QLabel('1/4 Mile Estimator')
   self.weight_label = QLabel('Weight (lbs):')
   self.weight_input = QLineEdit()
   self.hp_label = QLabel('Horsepower:')
   self.hp_input = QLineEdit()
   self.calculate_button = QPushButton('Estimate')
   self.result_label = QLabel('')

   # 将UI元素添加到布局中
   layout.addWidget(self.title)
   layout.addWidget(self.weight_label)
   layout.addWidget(self.weight_input)
   layout.addWidget(self.hp_label)
   layout.addWidget(self.hp_input)
   layout.addWidget(self.calculate_button)
   layout.addWidget(self.result_label)

   # 将估计按钮连接到计算函数
   self.calculate_button.clicked.connect(self.estimate_quarter_mile)

   # 设置小部件的布局
   self.setLayout(layout)

time (seconds) = 6.269 * sqrt(weight (lbs) / horsepower)
def estimate_quarter_mile(self):
   try:
      weight = float(self.weight_input.text())
      horsepower = float(self.hp_input.text())

      # 计算1/4英里时间
      time = 6.269 * math.sqrt(weight / horsepower)

      # 显示结果
      self.result_label.setText(f'Approximated 1/4 Mile Time: {time:.2f} seconds')
   except ValueError:
      # 如果输入无效,则显示错误消息
      self.result_label.setText('Error: Invalid input. Please enter valid numbers for weight and horsepower.')

if name == 'main': app = QApplication(sys.argv) estimator = QuarterMileEstimator()

estimator.setWindowTitle('1/4 Mile Estimator')
estimator.show()

sys.exit(app().exec_())
  • Definieren Sie eine QuarterMileEstimator-Klasse, die von QWidget erbt. Definieren Sie die Init-Methode zum Initialisieren des Objekts und rufen Sie die Methode init_ui auf.

  • Generieren und konfigurieren Sie in der init_ui-Methode UI-Elemente wie Beschriftungen, Eingabefelder und Schaltflächen. Fügen Sie UI-Elemente zum QVBoxLayout-Layout hinzu.

  • Verbinden Sie das Klicksignal der geschätzten Schaltfläche mit der Methode „estimate_quarter_mile“, die wir im nächsten Schritt definieren werden. Legt das Layout des QuarterMileEstimator-Widgets fest.

Erreichen Sie die Schätzung von 1/4 Meile

Jetzt integrieren wir die Schätzlogik in unseren Schätzer. Wir werden die folgende Formel verwenden, um die Zeit von einer Viertelmeile ungefähr zu berechnen -

时间(秒)= 6.269 * sqrt(重量(磅)/ 马力)

Erstellen Sie die Methode „estimate_quarter_mile“ in der Klasse „QuarterMileEstimator“, um diese Schätzung durchzuführen –

def estimate_quarter_mile(self):
   try:
      weight = float(self.weight_input.text())
      horsepower = float(self.hp_input.text())

      # 计算1/4英里时间
      time = 6.269 * math.sqrt(weight / horsepower)

      # 显示结果
      self.result_label.setText(f'Approximated 1/4 Mile Time: {time:.2f} seconds')
   except ValueError:
      # 如果输入无效,则显示错误消息
      self.result_label.setText('Error: Invalid input. Please enter valid numbers for weight and horsepower.')
  • Definieren Sie die Methode „estimate_quarter_mile“ in der QuarterMileEstimator-Klasse.

  • Gewichts- und PS-Werte aus Eingabefeldern abrufen und in Gleitkommazahlen umwandeln. Verwenden Sie die Formel, um Ihre geschätzte 1/4-Meile-Zeit zu berechnen.

  • Ergebnisse in result_label QLabel anzeigen. Wenn ein ValueError auftritt (z. B. wenn das Eingabefeld einen nicht numerischen Wert enthält), wird eine Fehlermeldung angezeigt.

Richten Sie die Hauptanwendungsschleife ein

Schließlich erstellen Sie die Hauptanwendungsschleife, um den Schätzer zu betreiben −

最终,创建主应用程序循环来操作估算器:

if name == 'main': app = QApplication(sys.argv) estimator = QuarterMileEstimator()

estimator.setWindowTitle('1/4 Mile Estimator')
estimator.show()

sys.exit(app().exec_())
  • Stellen Sie sicher, dass das Skript als Hauptprogramm ausgeführt wird (d. h. nicht als Modul importiert). Erstellen Sie ein QApplication-Objekt und übergeben Sie Befehlszeilenparameter.

  • Erstellen Sie eine Instanz der QuarterMileEstimator-Klasse. Legen Sie den Fenstertitel fest und verwenden Sie die Show-Methode, um den Schätzer anzuzeigen.

  • Verwenden Sie app.exec_(), um die Ereignisschleife Ihrer Anwendung auszuführen und das Skript zu verlassen, wenn die Schleife endet.

Ausgabe

---------------------------
| 1/4英里估计器           |
---------------------------
| 重量(磅):            |
| [_______________]       |
| 马力:                  |
| [_______________]       |
| [估计]                  |
|                         |
| 大约1/4英里时间: ____ 秒 |
---------------------------

Fazit

Wenn Sie diese Schritte befolgen, verfügen Sie jetzt über einen voll funktionsfähigen 1/4-Meile-Schätzer, der PyQt5 in Python verwendet. Dieses einfache, aber leistungsstarke Tool bewertet die Leistung verschiedener Fahrzeuge anhand ihres Gewichts und ihrer PS-Leistung. Mit PyQt5 können Sie ganz einfach plattformübergreifende Desktop-Anwendungen erstellen, die für eine Vielzahl von Anwendungsfällen geeignet sind, von einfachen Schätzern bis hin zu komplexen Produktivitätstools.

Während Sie Ihre Python- und PyQt5-Kenntnisse weiter verbessern, sollten Sie die Erkundung komplexerer Funktionen und Techniken in Betracht ziehen, z. B. die Integration in Datenbanken, die Einbindung von Multimedia und die Erstellung benutzerdefinierter Widgets. Durch kontinuierliches Lernen und Experimentieren sind Sie in der Lage, jedes Desktop-Anwendungsprojekt in Angriff zu nehmen.

Das obige ist der detaillierte Inhalt von1/4-Meile-Rechner, geschrieben in PyQt5 in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen