F1 · Modul 15
Otomasi sehari-hari
51 langkah singkat, dari mudah sampai tantangan.
Level 1
Kenal
Level 2
Paham
Level 3
Terapkan
Level 4
Tantangan
Level 5
Pendalaman
Intinya
- Otomasi aman: coba dulu (dry run), jangan menimpa, jangan menghapus, dan catat setiap tindakan.
Path.globmenemukan berkas; selalu urutkan hasilnya dengansorted(...).- Ganti nama massal: susun rencana, periksa
exists(), ganti hanya bila diminta.renamebisa menimpa diam-diam di macOS dan Linux. - Gabung CSV dan laporan Markdown memakai pola yang sudah kamu kenal:
csv, list, dan"\n".join. - Impor mutasi: baris yang rusak dilewati dan dilaporkan, tidak menghentikan seluruh impor.
Sebelum mulai
±5 jam (termasuk lab di komputermu).
Modul ini memakai materi di bawah. Belum yakin? Ulas dulu bagian yang disebut.
Hasil belajar: mencari berkas dengan Path.glob; mengganti nama banyak berkas sekaligus dengan mode coba (dry run) dan tanpa menimpa berkas lain; membuat cadangan dengan shutil; menggabung banyak CSV menjadi satu; menyusun laporan Markdown dengan "\n".join; mengubah unduhan mutasi CSV menjadi transaksi yang rapi; memakai opsi ya/tidak di argparse; dan mengenal cara menjadwalkan skrip dengan cron atau Task Scheduler.
Proyek: kasku langkah 15: impor_mutasi di berkas baru penyimpanan.py, perintah impor (dengan --coba) dan laporan (menulis laporan-YYYY-MM.md).
Istilah di modul ini (46)
Ketuk istilah untuk melihat penjelasannya. Di materi, istilah bergaris titik membuka kartu yang sama. Semua istilah course
Bahan modul
Semua kode, latihan, dan data modul ini dalam satu zip, untuk dijalankan di laptop atau Google Colab.
- 30 contoh kode
- 8 berkas latihan + tes
Lihat isi zip
- BACA-DULU.txt
- data/mutasi-2026-09.csv
- data/mutasi-2026-10.csv
- data/catatan.txt
- data/arsip/mutasi-2026-08.csv
- struk/Struk_Belanja-01.JPG
- struk/IMG_0002.jpg
- struk/img-0002.jpg
- struk/sudah-rapi.jpg
- cabang/pusat.csv
- cabang/pasar.csv
- mutasi.csv
- laporan/okt.csv
- laporan/sep.csv
- laporan/catatan.txt
- laporan/arsip/agu.csv
- foto/Struk_01.JPG
- foto/Struk_02.JPG
- foto/struk-02.jpg
- foto/rapi.jpg
- cabang-beda/a.csv
- cabang-beda/b.csv
- bank-lain.csv
- format.py
- kas-uji.json
- data.py
- penyimpanan.py
- contoh_f1_15_41.py
- contoh_f1_15_88.py
- contoh_f1_15_117.py
- contoh_f1_15_137.py
- contoh_f1_15_159.py
- contoh_f1_15_183.py
- contoh_f1_15_307.py
- contoh_f1_15_554.py
- contoh_f1_15_588.py
- contoh_f1_15_614.py
- contoh_f1_15_657.py
- contoh_f1_15_845.py
- contoh_f1_15_863.py
- contoh_f1_15_895.py
- contoh_f1_15_910.py
- contoh_f1_15_1027.py
- contoh_f1_15_1065.py
- contoh_f1_15_1085.py
- contoh_f1_15_1110.py
- contoh_f1_15_1153.py
- contoh_f1_15_1179.py
- contoh_f1_15_1243.py
- contoh_f1_15_1289.py
- contoh_f1_15_1309.py
- contoh_f1_15_2414.py
- contoh_f1_15_2442.py
- contoh_f1_15_2488.py
- contoh_f1_15_2511.py
- contoh_f1_15_2538.py
- contoh_f1_15_2842.py
- test_f1_15_1.py
- test_f1_15_2.py
- test_f1_15_3.py
- test_f1_15_4.py
- test_f1_15_5.py
- test_f1_15_6.py
- test_f1_15_7.py
- test_f1_15_8.py