Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

王林
Lepaskan: 2023-09-04 15:37:05
ke hadapan
932 orang telah melayarinya

PyWebio ialah perpustakaan Python yang boleh digunakan untuk membina aplikasi web yang memerlukan UI yang lebih ringkas. Ia menyediakan pelbagai ciri untuk mencipta pelayar web yang mudah. Sesiapa sahaja boleh menggunakan PyWebio untuk membina aplikasi web mudah tanpa pengetahuan HTML dan JavaScript terlebih dahulu.

Tutorial ini akan menerangkan dua kaedah mencipta rangkaian untuk mengira BMI. Indeks jisim badan (BMI) mengukur lemak badan berdasarkan berat dan ketinggian. Ia biasanya digunakan untuk menentukan sama ada seseorang itu kurang berat badan, normal, berat badan berlebihan atau obes.

Contoh

Dalam contoh ini, kami mentakrifkan kelas "BMICalculator" yang mengandungi semua kaedah yang diperlukan untuk mengira dan mengklasifikasikan BMI. Kaedah '__init__' memulakan sifat objek kepada Tiada.

Seterusnya, kami menggunakan kaedah "get_user_inputs()", yang mendapatkan ketinggian dan berat pengguna menggunakan fungsi "input()". Kaedah 'calculate_bmi()' kemudian menggunakan formula untuk mengira BMI dan membundarkan hasilnya kepada dua tempat perpuluhan. Kaedah 'classify_weight_category()' menggunakan pernyataan if-elif-else untuk mengklasifikasikan kategori berat pengguna berdasarkan BMI yang dikira. Kaedah "display_results()" menggunakan fungsi "put_text()" untuk memaparkan BMI dan kategori berat kepada pengguna.

Akhir sekali, kami mentakrifkan fungsi "calculate_bmi()", yang mencipta contoh kelas BMICalculator, memanggil kaedahnya dalam urutan dan memaparkan hasilnya kepada pengguna. Fungsi ini berfungsi sebagai titik masuk ke aplikasi PyWebIO.

from pywebio.input import input, FLOAT
from pywebio.output import put_text
class BMICalculator:
   def __init__(self):
      self.height = None
      self.weight = None
      self.bmi = None
      self.classification = None

   def calculate_bmi(self):

      # Get user's height and weight
      self.height = input("Please enter your height in meters (m):", type=FLOAT)
      self.weight = input("Please enter your weight in kilograms (kg):", type=FLOAT)

      # Calculate BMI
      self.bmi = self.weight / (self.height ** 2)

      # Determine BMI classification
      if self.bmi < 16:
         self.classification = "Severely underweight"
      elif self.bmi < 18.5:
         self.classification = "Underweight"
      elif self.bmi < 25:
         self.classification = "Normal (healthy weight)"
      elif self.bmi < 30:
         self.classification = "Overweight"
      elif self.bmi < 35:
         self.classification = "Moderately obese"
      else:
         self.classification = "Severely obese"

      # Display results to the user
      put_text("Based on your height of {}m and weight of {}kg, your BMI is {:.1f}. This means you are classified as {}.".format(self.height, self.weight, self.bmi, self.classification))
      
      # Create BMICalculator object
      bmi_calculator = BMICalculator()
      
      # Calculate BMI and display results
      bmi_calculator.calculate_bmi()
Salin selepas log masuk

Output

Apabila anda menjalankan skrip python di atas, ia akan membuka tetingkap baharu seperti yang ditunjukkan di bawah -

Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

Masukkan ketinggian anda dalam meter dan klik butang "Serah". Selepas mengklik butang Hantar, skrin berikut akan muncul -

Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

Sekarang masukkan berat badan anda dalam kilogram dan klik pada butang "Serah" sekali lagi. Selepas klik butang "Submit", keputusan akan dipaparkan seperti berikut -

Based on your height of 1.7m and weight of 65kg, your BMI is 22.5. This means you are classified as Normal (healthy weight).
Salin selepas log masuk

Contoh

Ini adalah satu lagi cara mudah untuk membuat aplikasi web bmi. Dalam contoh ini, kami mentakrifkan fungsi "calculate_bmi()" yang menggesa pengguna untuk ketinggian dan berat. Ia kemudian mengira BMI menggunakan formula berat/(tinggi/100)^2, bulatkan kepada dua tempat perpuluhan dan memaparkan keputusan menggunakan fungsi "put_text()". Seterusnya, ia menggunakan satu siri pernyataan if untuk menentukan kategori berat berdasarkan BMI yang dikira.

Akhir sekali, kami menggunakan fungsi "start_server()" untuk memulakan aplikasi web dan memaparkan kalkulator BMI. Kami kemudiannya menetapkan tajuk aplikasi web kepada "Kalkulator BMI" dan teks pada butang "Kira" kepada "Kira BMI."

from pywebio.input import *
from pywebio.output import *
from pywebio import start_server
def calculate_bmi():
   height = input("Enter your height (in cm)", type=FLOAT)
   weight = input("Enter your weight (in kg)", type=FLOAT)
   bmi = weight / ((height/100) ** 2)
   bmi = round(bmi, 2)
   weight_category = ""
   if bmi < 18.5:
      weight_category = "underweight"
   elif 18.5 <= bmi <= 24.9:
      weight_category = "normal weight"
   elif 25 <= bmi <= 29.9:
      weight_category = "overweight"
   else:
      weight_category = "obese"
   put_text("Your BMI is: %s" % bmi)
   put_text("You have a %s" % weight_category)
   if __name__ == '__main__':
      start_server(calculate_bmi, port=80, debug=True, title="BMI Calculator", button_text="Calculate BMI")
Salin selepas log masuk

Output

Apabila anda menjalankan skrip python di atas, ia akan membuka tetingkap baharu seperti yang ditunjukkan di bawah -

Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

Masukkan ketinggian anda dalam meter dan klik butang "Serah". Selepas mengklik butang Hantar, skrin berikut akan muncul -

Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?

Sekarang masukkan berat anda dalam kilogram dan klik pada butang "Serah" sekali lagi. Selepas klik butang "Submit", keputusan akan dipaparkan seperti berikut -

Your BMI is: 21.22
You have a normal weight
Salin selepas log masuk

Kami mengetahui bahawa Pywebio ialah perpustakaan yang berkuasa untuk mencipta aplikasi web mudah. Pembangun boleh membuat aplikasi web dengan mudah yang memerlukan UI yang lebih ringkas. Ia menyediakan fungsi input/output untuk mengendalikan penukaran antara pembolehubah Python dan elemen halaman web, menjadikannya mudah untuk membina antara muka web interaktif. Salah satu kelebihan utama PyWebIO ialah kemudahan penggunaannya. Kami boleh bermula dengan cepat dengan memasang perpustakaan dan mengimport fungsi yang diperlukan ke dalam kod Python anda. PyWebIO juga menyediakan pelbagai widget terbina dalam seperti kotak teks, menu lungsur turun, dan butang yang boleh digabungkan dengan mudah ke dalam aplikasi web. Ia menyokong pelbagai rangka kerja web, termasuk Flask, Django dan Tornado, dan boleh disepadukan dengan mudah dengan aplikasi web Python sedia ada

Atas ialah kandungan terperinci Bagaimana untuk membuat aplikasi web kalkulator BMI menggunakan Python dan PyWebIO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan