Panduan Lengkap Python
Dari Dasar hingga Tingkat Lanjut untuk Semua Perangkat
Bagian 1: Dasar-Dasar Python
Pemula
Python untuk Pemula: Python adalah bahasa pemrograman serbaguna yang mudah dipelajari dengan sintaks yang bersih. Cocok untuk pengembangan web, analisis data, AI, dan banyak lagi.
Instalasi Python
Unduh Python terbaru dari situs resmi python.org. Pastikan untuk mencentang opsi "Add Python to PATH" selama instalasi.
# Verifikasi instalasi di terminal/CMD
python --version
# Output contoh: Python 3.12.1
Struktur Dasar Program
# Ini adalah komentar
print("Hello, World!") # Fungsi output dasar
# Variabel dan tipe data
nama = "Budi" # String
umur = 25 # Integer
tinggi = 170.5 # Float
mahasiswa = True # Boolean
Latihan: Konverter Suhu
Buat program untuk mengkonversi suhu dari Celsius ke Fahrenheit.
Contoh Solusi
# Input suhu dalam Celsius
celsius = float(input("Masukkan suhu dalam Celsius: "))
# Konversi ke Fahrenheit
fahrenheit = (celsius * 9/5) + 32
# Tampilkan hasil
print(f"{celsius}°C = {fahrenheit}°F")
Bagian 2: Python Tingkat Menengah
Menengah
Struktur Data Lanjutan
# List Comprehension
kuadrat = [x**2 for x in range(10)]
# Dictionary
mahasiswa = {
"nama": "Andi",
"nim": "123456",
"prodi": "Informatika"
}
# Set
unik = {1, 2, 2, 3} # Hasil: {1, 2, 3}
Manipulasi File
# Menulis ke file
with open('data.txt', 'w') as file:
file.write("Baris pertama\nBaris kedua")
# Membaca file
with open('data.txt', 'r') as file:
for line in file:
print(line.strip())
Penting: Selalu gunakan with
statement ketika bekerja dengan file untuk memastikan file ditutup dengan benar setelah digunakan.
Bagian 3: Python Tingkat Lanjut
Lanjutan
Pemrograman Berorientasi Objek
class BangunDatar:
def __init__(self, nama):
self.nama = nama
def hitung_luas(self):
pass
class Persegi(BangunDatar):
def __init__(self, sisi):
super().__init__("Persegi")
self.sisi = sisi
def hitung_luas(self):
return self.sisi ** 2
# Penggunaan
kotak = Persegi(5)
print(f"Luas {kotak.nama}: {kotak.hitung_luas()}")
Decorators
import time
def waktu_eksekusi(func):
def wrapper(*args, **kwargs):
start = time.time()
result = func(*args, **kwargs)
end = time.time()
print(f"Waktu eksekusi: {end-start:.3f} detik")
return result
return wrapper
@waktu_eksekusi
def proses_data():
time.sleep(1)
return "Selesai"
print(proses_data())