Skip to main content

🐍 Tutorial Python

Belajar Python dari dasar hingga data science dengan latihan interaktif.

📦 Instalasi Python

Windows

  1. Download dari python.org
  2. Jalankan installer
  3. Centang "Add Python to PATH"
  4. Klik "Install Now"

Linux

sudo apt update
sudo apt install python3 python3-pip

macOS

brew install python3

Install Homebrew dulu jika belum: brew.sh

📓 Instalasi Jupyter Notebook

pip install jupyterlab
jupyter lab

Atau dengan conda: conda install jupyterlab

▶️ Menjalankan Program Python

1. File Python (.py):

python hello.py

2. Interactive mode:

python
>>> print("Hello, World!")

3. Jupyter Notebook:

jupyter lab
🐍

Dasar Python

Variabel, tipe data, control flow, dan fungsi.

Latihan 1: Buat program yang meminta input nama dan menampilkan sapaan.

nama = input("Siapa nama kamu? ")
print(f"Halo, {nama}! Selamat belajar Python!")

Latihan 2: Buat program kalkulator sederhana (tambah, kurang, kali, bagi).

a = float(input("Angka pertama: "))
b = float(input("Angka kedua: "))
print(f"Hasil: {a + b}")

Latihan 3: Buat program yang menentukan bilangan ganjil/genap.

n = int(input("Masukkan angka: "))
print("Genap" if n % 2 == 0 else "Ganjil")

Latihan 4: Buat program yang menampilkan bilangan 1 sampai 100 dengan for loop.

for i in range(1, 101):
    print(i)

Latihan 5: Buat fungsi yang menghitung luas persegi panjang.

def luas(p, l):
    return p * l

print(luas(5, 3))  # 15
☕

OOP

Class, object, inheritance, dan encapsulation.

Latihan 1: Buat class `Mahasiswa` dengan atribut nama, nim, dan jurusan.

class Mahasiswa:
    def __init__(self, nama, nim, jurusan):
        self.nama = nama
        self.nim = nim
        self.jurusan = jurusan

m = Mahasiswa("Choirul", "12345", "Teknik Informatika")
print(m.nama)

Latihan 2: Buat class `Kalkulator` dengan method tambah, kurang, kali, bagi.

class Kalkulator:
    def tambah(self, a, b):
        return a + b
    def kurang(self, a, b):
        return a - b

k = Kalkulator()
print(k.tambah(5, 3))  # 8

Latihan 3: Buat inheritance: class `Hewan` dan class `Kucing` yang mewarisi `Hewan`.

class Hewan:
    def __init__(self, nama):
        self.nama = nama
    def suara(self):
        return "..."

class Kucing(Hewan):
    def suara(self):
        return "Meong!"

k = Kucing("Kitty")
print(k.suara())  # Meong!

Latihan 4: Buat encapsulation dengan private attribute dan getter/setter.

class Bank:
    def __init__(self, saldo):
        self.__saldo = saldo
    def get_saldo(self):
        return self.__saldo
    def set_saldo(self, nilai):
        if nilai >= 0:
            self.__saldo = nilai

Latihan 5: Buat class `Persegi` dengan method luas dan keliling.

class Persegi:
    def __init__(self, sisi):
        self.sisi = sisi
    def luas(self):
        return self.sisi ** 2
    def keliling(self):
        return 4 * self.sisi
🌐

Web Framework

Flask dan FastAPI untuk membuat web application.

Latihan 1: Buat aplikasi Flask sederhana dengan route '/' yang menampilkan 'Hello World'.

from flask import Flask
app = Flask(__name__)

@app.route("/")
def home():
    return "Hello World!"

if __name__ == "__main__":
    app.run(debug=True)

Latihan 2: Buat route dengan parameter: `/user/<nama>` yang menampilkan 'Halo, {nama}!'.

@app.route("/user/<nama>")
def user(nama):
    return f"Halo, {nama}!"

Latihan 3: Buat API endpoint yang mengembalikan JSON dengan FastAPI.

from fastapi import FastAPI
app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello World"}

Latihan 4: Buat form input dengan Flask (GET dan POST).

@app.route("/login", methods=["GET", "POST"])
def login():
    if request.method == "POST":
        username = request.form["username"]
        return f"Selamat datang, {username}!"
    return render_template("login.html")

Latihan 5: Buat template HTML dengan Jinja2 di Flask.

<h1>Selamat datang, {{ nama }}!</h1>
{% if nama == "Admin" %}
    <p>Anda adalah admin.</p>
{% endif %}
📊

Data Science

Pandas, NumPy, dan visualisasi data.

Latihan 1: Buat DataFrame dari dictionary dengan Pandas.

import pandas as pd
data = {"Nama": ["Andi", "Budi", "Cici"], "Usia": [20, 21, 22]}
df = pd.DataFrame(data)
print(df)

Latihan 2: Baca file CSV dan tampilkan 5 baris pertama.

df = pd.read_csv("data.csv")
print(df.head())

Latihan 3: Hitung rata-rata, median, dan standar deviasi dari kolom numerik.

print(df["Usia"].mean())
print(df["Usia"].median())
print(df["Usia"].std())

Latihan 4: Buat array NumPy dan operasi dasar (tambah, kali, dot product).

import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(a + b)  # [5 7 9]
print(np.dot(a, b))  # 32

Latihan 5: Buat visualisasi bar chart dengan Matplotlib.

import matplotlib.pyplot as plt
plt.bar(["A", "B", "C"], [10, 20, 15])
plt.title("Contoh Bar Chart")
plt.show()
🤖

Machine Learning

Regresi, klasifikasi, dan neural network dengan scikit-learn.

Latihan 1: Install scikit-learn dan buat dataset sederhana.

pip install scikit-learn
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=100, n_features=4, n_classes=2)

Latihan 2: Bagi data menjadi training dan testing set.

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

Latihan 3: Buat model Linear Regression dan prediksi.

from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X_train, y_train)
pred = model.predict(X_test)

Latihan 4: Evaluasi model dengan accuracy score.

from sklearn.metrics import accuracy_score
print(accuracy_score(y_test, pred))

Latihan 5: Buat model K-Nearest Neighbors (KNN).

from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)
print(knn.score(X_test, y_test))