Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kalkulator 1/4 batu ditulis dalam PyQt5 dalam Python

Kalkulator 1/4 batu ditulis dalam PyQt5 dalam Python

WBOY
WBOYke hadapan
2023-08-17 11:59:501217semak imbas

1/4 batu pecutan garis lurus ialah metrik biasa untuk menilai prestasi kereta dan motosikal. Peminat dan pakar sama-sama menggunakan jarak ini untuk menilai pecutan dan keupayaan keseluruhan. Dalam artikel ini, kami akan membina penganggar 1/4 batu asas menggunakan PyQt5, perpustakaan Python yang terkenal untuk mencipta antara muka pengguna grafik (GUI). Pada penghujung artikel ini, anda akan mempunyai penganggar 1/4 batu berfungsi sepenuhnya yang boleh anda gunakan untuk menilai prestasi pelbagai kenderaan.

Mengapa memilih PyQt5 sebagai penganggar 1/4 batu?

PyQt5 ialah perpustakaan yang berkuasa dan serba boleh untuk membina aplikasi desktop dalam Python. Ia menyediakan set alat intuitif untuk menjana GUI tahap tinggi yang mesra pengguna yang berjalan pada berbilang platform, termasuk Windows, macOS dan Linux. Oleh kerana kemesraan pengguna, keserasian merentas platform dan dokumentasi yang luas, PyQt5 amat sesuai untuk membangunkan penganggar suku batu.

Peringkat membina penganggar 1/4 batu dalam Python menggunakan PyQt5

Pasang PyQt5

Sebelum kita mula, kita mesti memasang PyQt5. Anda boleh melakukan ini menggunakan pip (pemasang pakej Python), cuma jalankan arahan berikut -

pip install PyQt5

Sepadukan modul yang diperlukan

Mula-mula, mari gabungkan modul asas PyQt5 dengan modul matematik terbina dalam Python.

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

Membangunkan kelas aplikasi utama

Seterusnya, buat kelas tetingkap aplikasi utama yang diwarisi daripada QWidget. Kelas ini akan mengandungi komponen dan susun atur penganggar kami.

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_())
  • Tentukan kelas QuarterMileEstimator yang mewarisi daripada QWidget. Tentukan kaedah init untuk memulakan objek dan panggil kaedah init_ui.

  • Dalam kaedah init_ui, jana dan konfigurasikan elemen UI seperti label, medan input dan butang. Tambahkan elemen UI pada reka letak QVBoxLayout.

  • Sambungkan isyarat klik butang anggaran kepada kaedah anggaran_suku_batu, yang akan kami tentukan dalam peringkat seterusnya. Menetapkan reka letak widget QuarterMileEstimator.

Mencapai anggaran 1/4 batu

Sekarang, mari kita masukkan logik anggaran ke dalam penganggar kita. Kami akan menggunakan formula berikut untuk menganggarkan masa 1/4 batu -

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

Buat kaedah anggaran_suku_mil dalam kelas QuarterMileEstimator untuk melaksanakan anggaran ini -

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.')
  • Tentukan kaedah anggaran_suku_batu dalam kelas QuarterMileEstimator.

  • Dapatkan berat dan nilai kuasa kuda daripada medan input dan tukarkannya kepada nombor titik terapung. Gunakan formula untuk mengira anggaran masa 1/4 batu anda.

  • Paparkan hasil dalam result_label QLabel. Jika ValueError berlaku (contohnya, jika medan input mengandungi nilai bukan angka), mesej ralat dipaparkan.

Sediakan gelung aplikasi utama

Akhir sekali, buat gelung aplikasi utama untuk mengendalikan penganggar−

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

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

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

sys.exit(app().exec_())
  • Sahkan bahawa skrip dilaksanakan sebagai program utama (iaitu tidak diimport sebagai modul). Buat objek QApplication dan masukkan parameter baris arahan.

  • Buat contoh kelas QuarterMileEstimator. Tetapkan tajuk tetingkap dan gunakan kaedah tunjukkan untuk memaparkan penganggar.

  • Gunakan app.exec_() untuk menjalankan gelung acara aplikasi anda dan keluar dari skrip apabila gelung tamat.

Output

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

Kesimpulan

Dengan mengikuti peringkat ini, anda kini mempunyai penganggar 1/4 batu berfungsi sepenuhnya, menggunakan PyQt5 dalam Python. Alat yang ringkas namun berkuasa ini menilai prestasi pelbagai kenderaan berdasarkan berat dan kuasa kudanya. Menggunakan PyQt5, anda boleh membuat aplikasi desktop merentas platform dengan mudah yang sesuai untuk pelbagai kes penggunaan, daripada penganggar asas kepada alat produktiviti yang kompleks.

Sambil anda terus meningkatkan kemahiran Python dan PyQt5 anda, pertimbangkan untuk meneroka ciri dan teknik yang lebih kompleks, seperti menyepadukan dengan pangkalan data, menggabungkan multimedia dan membuat widget tersuai. Melalui pembelajaran dan percubaan berterusan, anda akan dapat menangani sebarang projek aplikasi desktop.

Atas ialah kandungan terperinci Kalkulator 1/4 batu ditulis dalam PyQt5 dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam