← Semua pembelajaran / Python Dasar
Fase 7 Β· Modul & Proyek Akhir

Modul Bawaan yang Berguna

Python datang dengan ratusan modul siap pakai. Ini enam yang paling cepat berguna bagi pemula.

Sumber asli docs.python.org Resmi Rangkuman ~5 menit baca

Intisari

  • Semua modul ini sudah terpasang β€” tidak perlu memasang apa pun, cukup import.
  • random untuk angka acak dan memilih item acak.
  • datetime untuk tanggal dan jam, termasuk selisih antar tanggal.
  • csv untuk file spreadsheet β€” lebih benar daripada memecah teks dengan split(",").
  • collections.Counter menghitung frekuensi dalam satu baris.

random β€” keacakan

import random

random.randint(1, 6)                  # bilangan bulat 1–6, keduanya ikut
random.random()                       # desimal 0.0 sampai 1.0
random.choice(["apel", "jeruk"])      # satu item acak
random.sample(range(1, 50), 6)        # 6 angka berbeda β€” cocok untuk undian
random.shuffle(daftar)                # acak urutan list DI TEMPAT

randint(1, 6) memasukkan angka 6. Ini berbeda dari range(1, 6) yang berhenti di 5. Salah satu dari sedikit tempat di Python yang batas akhirnya ikut.

datetime β€” tanggal dan waktu

from datetime import datetime, date, timedelta

sekarang = datetime.now()
print(sekarang)                                  # 2026-08-10 14:30:22.123456
print(sekarang.strftime("%d/%m/%Y %H:%M"))       # 10/08/2026 14:30

hari_ini = date.today()
besok = hari_ini + timedelta(days=1)
minggu_lalu = hari_ini - timedelta(weeks=1)

ulang_tahun = date(2026, 12, 25)
selisih = ulang_tahun - hari_ini
print(f"{selisih.days} hari lagi")
Kode formatHasil
%d %m %YTanggal, bulan, tahun 4 digit
%H %M %SJam, menit, detik
%A %BNama hari, nama bulan (bahasa Inggris)

math β€” matematika

import math

math.sqrt(16)         # 4.0     akar
math.ceil(4.2)        # 5       bulatkan ke atas
math.floor(4.8)       # 4       bulatkan ke bawah
math.pi               # 3.14159...

Untuk penjumlahan, pembulatan biasa, dan nilai mutlak, fungsi bawaan sudah cukup β€” sum(), round(), abs() tidak perlu import.

csv β€” file spreadsheet

import csv

# Menulis
with open("nilai.csv", "w", newline="", encoding="utf-8") as f:
    w = csv.writer(f)
    w.writerow(["nama", "nilai"])
    w.writerow(["Ani", 85])

# Membaca sebagai dictionary per baris
with open("nilai.csv", newline="", encoding="utf-8") as f:
    for baris in csv.DictReader(f):
        print(baris["nama"], baris["nilai"])

Kenapa tidak split(",") saja? Karena nilai yang mengandung koma ditulis dalam tanda kutip di CSV β€” "Jakarta, Indonesia" β€” dan split akan memecahnya jadi dua kolom. Modul csv mengerti aturan itu. Parameter newline="" juga wajib, kalau tidak akan muncul baris kosong di antara data pada Windows.

collections.Counter β€” menghitung frekuensi

from collections import Counter

kata = "belajar python itu menyenangkan".split()
hitung = Counter(kata)

print(hitung)                       # Counter({'belajar': 1, 'python': 1, ...})
print(hitung.most_common(3))        # tiga yang paling sering

Menggantikan seluruh pola β€œbuat dictionary kosong lalu tambah satu-satu” dari Fase 4.

os dan sys β€” berurusan dengan sistem

import os, sys

os.getenv("HOME")            # baca variabel lingkungan
sys.argv                     # argumen dari baris perintah
sys.exit("Pesan keluar")     # hentikan program dengan pesan

Untuk urusan file dan folder, pathlib dari Fase 6 lebih enak dipakai daripada os.path.

Cara mencari sendiri

>>> import random
>>> help(random)            # daftar semua isi modul
>>> help(random.choice)     # penjelasan satu fungsi
>>> dir(random)             # nama-nama yang tersedia

Kebiasaan yang layak dibentuk: sebelum memasang pustaka pihak ketiga, cek dulu apakah pustaka standar sudah menyediakannya. Sering kali sudah β€” dan itu satu dependensi yang tidak perlu kamu urus.

Latihan: buat generator kuis. Simpan 10 soal pilihan ganda di sebuah list, acak urutannya dengan random.shuffle, catat waktu mulai dan selesai dengan datetime, lalu tampilkan skor beserta lama pengerjaan.

Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.