Iklan 728x90 - Pasang Kode AdSense Anda Di Sini
📚 Bagian 1: Python Dasar
Apa itu Python?
Python adalah bahasa pemrograman tingkat tinggi yang dibuat oleh Guido van Rossum pada tahun 1991. Python terkenal dengan sintaks yang mudah dibaca dan dipahami.
Mengapa Belajar Python?
- 📖 Mudah Dipelajari - Sintaks seperti bahasa Inggris
- 🌐 Serbaguna - Web, Data Science, AI, Automation
- 📦 Library Lengkap - Ribuan modul tersedia
- 💼 Demand Tinggi - Banyak lowongan kerja
Instalasi Python
# Cara install Python:
# 1. Download dari https://python.org
# 2. Atau gunakan Anaconda (untuk Data Science)
# Cek versi Python:
python --version
python3 --version
Hello World!
# Cara pertama - print()
print("Hello, World!")
# Dengan variabel
nama = "Anak Cisoka"
print(f"Halo, {nama}!")
# Tipe data
nama = "Budi" # str (string)
umur = 15 # int (integer)
tinggi = 165.5 # float
is_siswa = True # bool (boolean)
Variabel dan Tipe Data
# Tipe Data Dasar Python
# String (str)
nama = "Informatika"
kalimat = 'Belajar Python itu mudah!'
# Integer (bilangan bulat)
a = 10
b = -5
c = 0
# Float (bilangan desimal)
pi = 3.14159
harga = 15000.50
# Boolean
benar = True
salah = False
# List (array)
angka = [1, 2, 3, 4, 5]
nama_siswa = ["Ana", "Budi", "Citra"]
# Tuple (list yang tidak bisa diubah)
koordinat = (10, 20)
# Dictionary
siswa = {
"nama": "Dodi",
"umur": 15,
"kelas": "X"
}
Operasi Aritmatika
# Operator Aritmatika
a = 10
b = 3
print(a + b) # Penjumlahan: 13
print(a - b) # Pengurangan: 7
print(a * b) # Perkalian: 30
print(a / b) # Pembagian: 3.333...
print(a // b) # Pembagian bulat: 3
print(a % b) # Modulus (sisa bagi): 1
print(a ** b) # Pangkat: 1000
Input dan Output
# Input dari pengguna
nama = input("Masukkan nama Anda: ")
umur = int(input("Masukkan umur Anda: "))
# Output dengan format
print(f"Nama: {nama}, Umur: {umur}")
# Format string lain
print("Nama: {} | Umur: {}".format(nama, umur))
📹 Video Tutorial Bagian 1:
🔀 Bagian 2: Kontrol Alur Program
Kondisi (If-Else)
# Kondisi If-Else Sederhana
nilai = 85
if nilai >= 90:
print("A - Sempurna!")
elif nilai >= 80:
print("B - Baik sekali!")
elif nilai >= 70:
print("C - Baik")
elif nilai >= 60:
print("D - Perlu peningkatan")
else:
print("E - Tidak lulus")
# Kondisi dengan operator logika
usia = 17
sim = True
if usia >= 18 and sim == True:
print("Boleh bawa mobil!")
else:
print("Belum boleh bawa mobil")
Perulangan (Loop)
# For Loop - Mengulang sejumlah tertentu
for i in range(5):
print(f"Perulangan ke-{i}")
# For dengan list
buah = ["Apel", "Jeruk", "Mangga"]
for b in buah:
print(f"Buah: {b}")
# While Loop - Mengulang selama kondisi benar
hitung = 1
while hitung <= 5:
print(f"Hitung: {hitung}")
hitung += 1
# Break dan Continue
for i in range(10):
if i == 3:
continue # Skip angka 3
if i == 7:
break # Stop di angka 7
print(i)
List Comprehension
# List Comprehension - Cara singkat membuat list
# Kuadrat angka 0-9
kuadrat = [x**2 for x in range(10)]
print(kuadrat) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
# Angka genap saja
genap = [x for x in range(20) if x % 2 == 0]
print(genap) # [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
# Mengubah huruf
huruf_besar = [x.upper() for x in ['a', 'b', 'c']]
print(huruf_besar) # ['A', 'B', 'C']
📹 Video Tutorial Bagian 2:
⚙️ Bagian 3: Fungsi dan Modular
Membuat Fungsi
# Fungsi sederhana
def salam():
print("Halo, selamat pagi!")
salam() # Memanggil fungsi
# Fungsi dengan parameter
def salam(nama):
print(f"Halo, {nama}! Selamat pagi!")
salam("Budi")
salam("Ani")
# Fungsi dengan return
def tambah(a, b):
hasil = a + b
return hasil
jumlah = tambah(5, 3)
print(jumlah) # 8
Parameter dan Argumen
# Default parameter
def salam(nama, waktu="pagi"):
print(f"Selamat {waktu}, {nama}!")
salam("Budi") # Selamat pagi, Budi!
salam("Ani", "sore") # Selamat sore, Ani!
# *args - Banyak argumen
def total(*angka):
hasil = 0
for a in angka:
hasil += a
return hasil
print(total(1, 2, 3, 4, 5)) # 15
# **kwargs - Argumen bernama
def info_siswa(**data):
for key, value in data.items():
print(f"{key}: {value}")
info_siswa(nama="Budi", kelas="X", usia=15)
Lambda Function
# Lambda - Fungsi tanpa nama (anonymous)
#Syntax: lambda arguments: expression
# Kuadrat dengan lambda
kuadrat = lambda x: x ** 2
print(kuadrat(5)) # 25
# Penjumlahan
jumlah = lambda a, b: a + b
print(jumlah(3, 4)) # 7
# Dengan fungsi map()
angka = [1, 2, 3, 4, 5]
kuadrat = list(map(lambda x: x**2, angka))
print(kuadrat) # [1, 4, 9, 16, 25]
Module dan Import
# Import module bawaan Python
import math
print(math.pi) # 3.141592653589793
print(math.sqrt(16)) # 4.0
# Import dengan alias
import datetime as dt
sekarang = dt.datetime.now()
print(sekarang)
# Import spesifik
from random import randint, choice
print(randint(1, 10)) # Angka random 1-10
print(choice(['A', 'B', 'C'])) # Pilih salah satu
📹 Video Tutorial Bagian 3:
📊 Bagian 4: Struktur Data
List (Daftar)
# Membuat list
angka = [1, 2, 3, 4, 5]
nama = ["Ana", "Budi", "Citra"]
campuran = [1, "Budi", True, 3.14]
# Mengakses elemen
print(angka[0]) # 1 (indeks pertama)
print(angka[-1]) # 5 (indeks terakhir)
print(angka[1:4]) # [2, 3, 4] (slicing)
# Modifikasi list
angka.append(6) # Tambah di akhir
angka.insert(0, 0) # Tambah di indeks tertentu
angka.remove(3) # Hapus berdasarkan nilai
angka.pop() # Hapus terakhir
#操作 lain
print(len(angka)) # Panjang list
print(angka.sort()) # Urutkan
print(angka.reverse()) # Balik urutan
Tuple
# Tuple - List yang tidak bisa diubah
koordinat = (10, 20)
warna = ("merah", "hijau", "biru")
# Mengakses tuple
print(koordinat[0]) # 10
print(koordinat[1]) # 20
# Tuple unpacking
x, y = koordinat
print(x, y) # 10 20
# Tuple bisadigunakan sebagai key dictionary
titik = {(0,0): "Origin", (1,0): "X", (0,1): "Y"}
Dictionary
# Dictionary - Pasangan Key-Value
siswa = {
"nama": "Budi",
"umur": 15,
"kelas": "X IPA 1",
"nilai": [90, 85, 88]
}
# Mengakses data
print(siswa["nama"]) # Budi
print(siswa.get("alamat", "Tidak ada")) # Default value
# Menambah/mengubah data
siswa["alamat"] = "Jakarta"
siswa["umur"] = 16
# Method dictionary
print(siswa.keys()) # Semua key
print(siswa.values()) # Semua value
print(siswa.items()) # Semua pasangan
# Loop dictionary
for key, value in siswa.items():
print(f"{key}: {value}")
Set
# Set - Koleksi unik tanpa urutan
angka_unik = {1, 2, 3, 3, 4, 4, 5}
print(angka_unik) # {1, 2, 3, 4, 5} (duplikat dihapus)
# Operasi set
A = {1, 2, 3, 4}
B = {3, 4, 5, 6}
print(A | B) # Union: {1, 2, 3, 4, 5, 6}
print(A & B) # Intersection: {3, 4}
print(A - B) # Difference: {1, 2}
print(A ^ B) # Symmetric: {1, 2, 5, 6}
📹 Video Tutorial Bagian 4:
🏗️ Bagian 5: Pemrograman Berorientasi Objek (OOP)
Class dan Object
# Membuat Class
class Mobil:
# Atribut/class attribute
roda = 4
# Constructor (init)
def __init__(self, merk, warna):
self.merk = merk # Instance attribute
self.warna = warna
# Method
def jalan(self):
print(f"Mobil {self.merk} sedang berjalan")
def berhenti(self):
print(f"Mobil {self.merk} berhenti")
def info(self):
return f"{self.warna} {self.merk}"
# Membuat Object
mobil1 = Mobil("Toyota", "Merah")
mobil2 = Mobil("Honda", "Biru")
# Memanggil method
mobil1.jalan()
print(mobil2.info())
Encapsulation (Enkapsulasi)
# Encapsulation - Menyembunyikan data
class BankAccount:
def __init__(self, saldo_awal):
self.__saldo = saldo_awal # Private dengan __
def setor(self, jumlah):
if jumlah > 0:
self.__saldo += jumlah
print(f"Berhasil setor {jumlah}")
def tarik(self, jumlah):
if jumlah <= self.__saldo:
self.__saldo -= jumlah
print(f"Berhasil tarik {jumlah}")
else:
print("Saldo tidak cukup!")
def cek_saldo(self):
return self.__saldo
# Penggunaan
akun = BankAccount(1000000)
akun.setor(500000)
print(akun.cek_saldo()) # 1500000
# Tidak bisa akses langsung:
print(akun.__saldo) # Error!
Inheritance (Pewarisan)
# Parent Class
class Hewan:
def __init__(self, nama):
self.nama = nama
def makan(self):
print(f"{self.nama} sedang makan")
def tidur(self):
print(f"{self.nama} sedang tidur")
# Child Class
class Kucing(Hewan):
def __init__(self, nama, warna):
super().__init__(nama) # Panggil constructor parent
self.warna = warna
def meong(self):
print(f"{self.nama} mengeong: Meong!")
def makan(self): # Override method
print(f"{self.nama} makan ikan")
# Penggunaan
kucing = Kucing("Kitty", "Orange")
kucing.makan() # Override: Kitty makan ikan
kucing.meong() # Method baru: Kitty mengeong
Polymorphism
# Polymorphism - Bentuk banyak
class Bentuk:
def luas(self):
pass
class Persegi(Bentuk):
def __init__(self, sisi):
self.sisi = sisi
def luas(self):
return self.sisi ** 2
class Lingkaran(Bentuk):
def __init__(self, radius):
self.radius = radius
def luas(self):
return 3.14 * self.radius ** 2
# Polymorphism dalam action
bentuk = [Persegi(4), Lingkaran(5), Persegi(3)]
for b in bentuk:
print(f"Luas: {b.luas()}")
📹 Video Tutorial Bagian 5:
📁 Bagian 6: File dan Exception Handling
Membaca dan Menulis File
# Menulis ke file
with open("data.txt", "w") as file:
file.write("Halo, ini baris pertama\n")
file.write("Ini baris kedua\n")
# Membaca file
with open("data.txt", "r") as file:
isi = file.read()
print(isi)
# Membaca baris per baris
with open("data.txt", "r") as file:
for baris in file:
print(baris.strip())
# Menambah data ke file
with open("data.txt", "a") as file:
file.write("Ini data tambahan\n")
Exception Handling
# Try-Except Dasar
try:
angka = int(input("Masukkan angka: "))
hasil = 10 / angka
print(f"Hasil: {hasil}")
except ValueError:
print("Input harus angka!")
except ZeroDivisionError:
print("Tidak bisa bagi dengan nol!")
finally:
print("Program selesai")
# Menangkap exception spesifik
try:
file = open("file_ada.txt", "r")
print(file.read())
file.close()
except FileNotFoundError:
print("File tidak ditemukan!")
except PermissionError:
print("Tidak memiliki izin akses!")
# Raise exception
def bagi(a, b):
if b == 0:
raise ValueError("Pembagi tidak boleh nol!")
return a / b
With Statement
# With statement - auto close file
# Tidak perlu khawatir menutup file
# JSON file
import json
# Menulis JSON
data = {"nama": "Budi", "umur": 15}
with open("data.json", "w") as file:
json.dump(data, file, indent=4)
# Membaca JSON
with open("data.json", "r") as file:
data_terbaca = json.load(file)
print(data_terbaca)
📹 Video Tutorial Bagian 6:
📈 Bagian 7: Python untuk Data Science
NumPy - Komputasi Numerik
# Install: pip install numpy
import numpy as np
# Membuat array
angka = np.array([1, 2, 3, 4, 5])
print(angka * 2) # [2, 4, 6, 8, 10]
# Array 2D (matriks)
matriks = np.array([[1, 2], [3, 4]])
print(matriks.shape) # (2, 2)
# Operasi matematika
print(np.mean(angka)) # Rata-rata: 3.0
print(np.max(angka)) # Maksimum: 5
print(np.sum(angka)) # Jumlah: 15
Pandas - Analisis Data
# Install: pip install pandas
import pandas as pd
# Membuat DataFrame
data = {
'Nama': ['Budi', 'Ani', 'Citra'],
'Umur': [15, 14, 15],
'Nilai': [90, 85, 88]
}
df = pd.DataFrame(data)
print(df)
# Membaca file CSV
df = pd.read_csv('data_siswa.csv')
# 操作 DataFrame
print(df.head()) # 5 data pertama
print(df.describe()) # Statistik deskriptif
print(df['Nama']) # Ambil kolom
print(df[df['Nilai'] > 85]) # Filter data
Matplotlib - Visualisasi Data
# Install: pip install matplotlib
import matplotlib.pyplot as plt
# Line plot
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.title('Grafik Linear')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()
# Bar chart
kelas = ['X IPA', 'X IPS', 'XI IPA']
siswa = [30, 25, 28]
plt.bar(kelas, siswa)
plt.title('Jumlah Siswa per Kelas')
plt.show()
# Pie chart
ukuran = [30, 25, 20, 15, 10]
label = ['A', 'B', 'C', 'D', 'E']
plt.pie(ukuran, labels=label)
plt.show()
📹 Video Tutorial Bagian 7:
🚀 Bagian 8: Proyek Python
💡 Ide Proyek Python
- Kalkulator - Calculator dengan GUI
- Game Snake - Game ular klasik
- Todo List App - Aplikasi daftar tugas
- Web Scraper - Mengambil data dari website
- Chatbot Sederhana - Botpercakapan
- Data Visualizer - Visualisasi data
Contoh: Kalkulator Sederhana
# Kalkulator Sederhana
def kalkulator():
print("=== KALKULATOR ===")
print("1. Penjumlahan")
print("2. Pengurangan")
print("3. Perkalian")
print("4. Pembagian")
pilihan = input("Pilih operasi (1-4): ")
a = float(input("Angka pertama: "))
b = float(input("Angka kedua: "))
if pilihan == "1":
print(f"Hasil: {a + b}")
elif pilihan == "2":
print(f"Hasil: {a - b}")
elif pilihan == "3":
print(f"Hasil: {a * b}")
elif pilihan == "4":
if b != 0:
print(f"Hasil: {a / b}")
else:
print("Error: Pembagian nol!")
else:
print("Pilihan tidak valid")
# Jalankan program
kalkulator()
Contoh: Game Tebak Angka
# Game Tebak Angka
import random
def game_tebak_angka():
angka_rahasia = random.randint(1, 100)
percobaan = 0
print("=== GAME TEBAK ANGKA ===")
print("Tebak angka antara 1-100!")
while True:
try:
tebakan = int(input("Masukkan tebakan: "))
percobaan += 1
if tebakan == angka_rahasia:
print(f"🎉 BENAR! Angka adalah {angka_rahasia}")
print(f"Anda menebak dalam {percobaan} percobaan")
break
elif tebakan < angka_rahasia:
print("📈 Terlalu kecil! Coba lagi")
else:
print("📉 Terlalu besar! Coba lagi")
except ValueError:
print("Masukkan angka yang valid!")
# Jalankan game
game_tebak_angka()
Iklan 728x90 - Pasang Kode AdSense Anda Di Sini