Belajar Flask - Bagian 9
Mini Project: Daftar Nilai Sederhana

oleh: Suryo Adhy Chandra, ST

Project ini menampilkan daftar nilai siswa dalam bentuk tabel, lengkap dengan nilai rata-rata dari semua siswa yang tercatat.

Ilustrasi daftar nilai sederhana

1. Fitur yang akan dibuat

2. Kode app.py

from flask import Flask, render_template, request, redirect app = Flask(__name__) daftar_nilai = [ {"nama": "Budi", "nilai": 90}, {"nama": "Sinta", "nilai": 85}, {"nama": "Andi", "nilai": 78}, ] @app.route("/", methods=["GET", "POST"]) def index(): if request.method == "POST": nama = request.form["nama"] nilai = int(request.form["nilai"]) daftar_nilai.append({"nama": nama, "nilai": nilai}) return redirect("/") total = 0 for data in daftar_nilai: total = total + data["nilai"] rata_rata = total / len(daftar_nilai) return render_template("nilai.html", daftar_nilai=daftar_nilai, rata_rata=rata_rata) if __name__ == "__main__": app.run(debug=True)
int(request.form["nilai"]) dipakai karena data yang dikirim dari form selalu berupa teks. Supaya bisa dijumlahkan sebagai angka, teks tersebut harus diubah dulu menjadi int.

3. Template templates/nilai.html

<h1>Daftar Nilai Siswa</h1> <form method="POST"> <input type="text" name="nama" placeholder="Nama siswa" required> <input type="number" name="nilai" placeholder="Nilai" required> <button type="submit">Tambah</button> </form> <table border="1"> <tr><th>Nama</th><th>Nilai</th></tr> {% for data in daftar_nilai %} <tr> <td>{{ data.nama }}</td> <td>{{ data.nilai }}</td> </tr> {% endfor %} </table> <p>Rata-rata nilai: {{ rata_rata }}</p>

4. Coba jalankan

Jalankan dengan python app.py, lalu buka http://127.0.0.1:5000/. Tambahkan beberapa nilai siswa baru dan lihat perubahan rata-ratanya.

← Kembali Ke Daftar Pelajaran Flask