
Jumat, 01 April 2022
Sabtu, 26 Februari 2022
Cara memperbaiki upgrade update kali linux lambat
Cara memperbaiki upgrade update kali linux lambat - Saya menginstall kalilinux di laptop menggunakan virtualbox, sekian hari kali linux yang terinstall menganggur dilaptop tanpa digunakan, akhirnya hari ini saya coba membuka dan melakukan update dan upgrade systemnya.
Namun update dan upgrade yang dilakukan kali linux tergolong sangat lambat dan sangat lama. Bahkan speed internet dari update dan upgrade kali linux sangat kecil.
Disisi lain saya memutar video dan lagu di youtube koneksi berjalan stabil dan kencang. Tapi update dan upgrade kali linuxnya sangat-sangat lambat dan lama, bahkan estimasi untuk ukuran file 10mb dia butuh 1 hari lebih.
Untuk memperbaiki upgrade update ubuntu linux yang lambat ini saya melakukan perubahan pada sources.list
Bagaimana cara mengubah sources.list di kali linux?
Cara mengubah sources.list kali linux sama halnya seperti mengubah sources.list repository ubuntu, bahkan perintah dan path filenya juga sama persis dengan ubuntu linux.
Bagi yang tidak tahu cara mengubahnya berikut caranya.
Pertama amankan file asli dari sources list, dengan membuat backup filenya, perintahnya:
sudo cp /etc/apt/sources.list /etc/apt/sources.list-backup
Perintah sudo harus ditambahkan apabila login sebagai user biasa, atau user kali, tapi jika login sebagai super user, sudo tidak perlu di tambahkan. Untuk login sebagai user user kali linux / ubuntu linux perintahnya sudo -i atau sudo su .
Jika backup sudah dibuat, maka file sources.list bisa kita ubah isinya. Perintahnya buka dengan text editor nano, text editor linux paling saya sukai ya nano ini.
sudo nano /etc/apt/sources.list
Setelah file editor terbuka dengan isi file sources.list maka isinya boleh dihapus semua, atau berikan tanda komentar berupa tanda # pada tiap baris repository kali linux yang ada disana.
Kemudian dibaris paling bawah sisipkan kode dibawah ini jika memang baris perintahnya diberi tanda komentar, atau tambahkan code dibawah ini jika baris repository didalam sources.list dihapus semuanya. Berikut repository yang saya gunakan untuk mempercepat upgrade dan update kali linux.
deb https://mirrors.ocf.berkeley.edu/kali/ kali-rolling main non-free contrib
Sehinga terlihat seperti gambar dibawah ini, jika baris-baris repository yang ada di komentari, atau hanya baris tersebut diatas yang ada jika list repository kali linuxnya di hapus.
sudo apt-get update && apt-get upgrade -ysudo apt update && apt upgrade -ySenin, 13 Desember 2021
Mencari Hasil Pemangkatan menggunakan Looping Pada Pascal
Mencari Hasil Pemangkatan menggunakan Looping Pada Pascal - membuat perulangan dalam pascal banyak caranya, demikian juga untuk mendapatkan hasil pemangkatan suatu angka banyak cara yang bisa digunakan, termasuk menggunakan kalkulator, software excell atau trik-trik lainnya.
Tulisan berikut merupakan dokumentasi, bagaimana mencari pangkat suatu angka menggunakan perulangan pada Mengenal pemrograman pascal.
Pemangkatan dapat diartikan bahwa perkalian sebuah nilai sebanyak nilai pangkatnya. Untuk code pascal dalam mencari suatu pangkat menggunakan looping perulangan misalanya seperti berikut:
program menghitung_pangkat;
Untuk menjalankan program Cetak output pascal turun kebawah tidak berbaris ini, saya menggunakan software freepascal dan editor sublime, gratisan tentunya bukan yang crack apalagi yang beli. Semoga Mencari Hasil Pemangkatan menggunakan Looping Pada Pascal. Hasil menjalankan progam pascal mencari pangkat suatu bilangan seperti berikut:
begin
clrscr;
write('Masukkan angka yang akan dipangkatkan: '); readln(angka1);
write('Masukkan pangkat bilangan: ');readln(pangkat);
hasil:=1;
for i:=1 to pangkat do
begin
hasil:=hasil*angka1;
end;
writeln('Hasil dari ',angka1,'Pangkat ',pangkat,' adalah: ',hasil);
end.
Rabu, 03 November 2021
Pascal : Mengenal Pemrograman Pascal
Bahasa pemrograman pascal bahasa yang di jalankan secara prosedural, yang artinya baris demi baris program ini di eksekusi/dijalankan oleh kompiler. Bahasa ini cukup mudah untuk dipelajari, bahkan mungkin sangat mudah dibanding dengan bahasa pemrograman lainnya, meski bahasa pascal sudah sangat amat tua, namun bahasa ini menjadi bahasa pemrograman wajib di sekolah - atau di kampus-kampus.Karena memang awal mula dibuatnya pascal juga untuk tujuan membantu didunia pendidikan.
Gambar blaise_pascal sumber: https://www.britannica.com/biography/Blaise-Pascal
Bahasa pemrograman pascal bisa berjalan di banyak operating system, seperti misalnya windows, mac-os, atau bahkan bisa dijalankan di unix/linux. Pada artikel Pascal : Mengenal Pemrograman Pascal saya kan menggunakan mungkin beberapa text editor seperti bawaan dari freepascal, lazarus atau mungkin bahkan menggunakan editor sublime.
Sebelum kita memulai belajar pascal, sebaiknya kita download dahulu aplikasi atau compiler dari pascal itu sendiri, anda bisa menggunakan turbo-pascal, atau freepascal, dan pada totorial ini saya menggunakan freepascal dan editor bawaannya yang berwarna biru, sebagai pemula dalam hal pemrograman ada baiknya gunakanya saja dahulu editor bawaan dari freepascal, oh iya jika kamu tidak memiliki komputer sedang kamu ingin belajar pemrograman pascal, atau kamu mau menyelesaikan tugas sekolah pemrograman pascal tapi tidak memiliki laptop atau komputer maka kamu bisa menggunakan handphone untuk belajar pemrograman ini, kamu bisa gunakan atau download aplikasi pascal-n ide di apps google store.
Pada tutorial kali ini, saya menggunakan komputer, mungkin dikesempatan lain kita akan menggunakan handphone android. Bahasa pascal juga merupakan bahasa yang general purpose (bisa menyelesaikan banyak masalah), high level programing yang aslinya dibuat oleh Niclause Wirth awal 1970an. Seperti saya sebut sebelumnya bahwa bahasa pemrograman ini buat untuk ditujukan pada dunia pendidikan,ditujukan untuk mempelajari disiplin pemrograman secara sistematis, bisa diandalkan, dan bisa membuat program yang efesien.
Pascal menjadi populer didunia pendidikan dan kampus karena beberapa alasan:
- Mudah dipelajari
- Bahasanya terstruktur/berurut
- effesien dan bisa diandalkan
- Bisa digunakan dibanyak operating system (seperti windows, mac-os, linux, unix dan android)
Struktur Bahasa Pascal
Sebelum kita belajar membuat blok/baris program, sebaiknya kita kenal dahulu struktur urutan baris bahasa pemrograman pascal, sehingga kita tidak salah dalam menuliskan kode program kita pada editor pascal yang kita gunakan, berikut struktur bahasa program pascal:- Nama Program
- perintah uses;
- Deklarasi Type
- Deklarasi Konstanta
- Deklarasi Variabel
- Deklarasi Fungsi
- Deklarasi Prosedur
- Main Program (program utama diawali oleh keyword begin dan di akhiri keyword end. )
- Statement dan expresi di masing-masing blok program
- Komentar
Selasa, 03 Agustus 2021
Cara membuat flashdisk boot windows 10 64bit
Cara membuat flashdisk boot windows 10 64bit - Cara membuat flashdisk boot windows banyak sudah artikel kita temukan di internet, tentunya masing-masing berdasarkan pengalaman masing-masing. Seperti halnya saya, berulang kali sudah saya membuat flashdisk boot, baik booting ubuntu server, booting mfsbsd dan lain sebagainya tapi saya tidak pernah mengalami masalah ketika saya menggunakan flashdisk Tosibha.
Berkali-kali saya coba membuat flahsdisk windows 10 64bit menggunakan rufus tapi selalu saja gagal di tengah jalan ketika aplikasi rufus melakukan copy file kedalam flashdisk, pesan yang muncul kerap kali adalah error The Specified Module Could Not Be Found . Bahkan sesudah itu kadang flashdisknya menjadi error untuk menyimpan file-file lain. Entah disebabkan apa saya juga kurang mengerti.
Berikut gambaran configurasi flashdisk boot windows 10 64bit yang saya buat dengan rufus. Menghindari error The Specified Module Could Not Be Found ketika membuat flashdisk boot windows 10 64bit.
Untuk membuat flshdisk sebagai media booting untuk installasi windows 10 64bit komputer kita, tentunya kita harus memiliki file iso dari windows yang akan kita install. Untuk mendapatkan file iso windows ada baiknya download langsung dari Microsoft langsung - > https://www.microsoft.com/en-us/software-download/windows10Selasa, 27 April 2021
Cara Mengubah KBLI Perusahaan di OSS
Kemudian
Kemudian
Jumat, 12 Maret 2021
Cara Load Balancing PCC Mikrotik 3 Jalur Internet Indihome – Panduan Interaktif
Apakah Anda ingin memaksimalkan koneksi internet di rumah atau kantor dengan tiga jalur ISP? Menggunakan load balancing PCC (Per Connection Classifier) Mikrotik adalah solusi terbaik. Artikel ini menyajikan panduan interaktif, lengkap dengan diagram, tips troubleshooting, dan langkah-langkah konfigurasi untuk load balancing PCC Mikrotik 3 jalur.
Diagram ilustrasi load balancing PCC Mikrotik 3 jalur
Apa Itu Load Balancing PCC Mikrotik?
Load balancing adalah metode untuk mendistribusikan paket data ke beberapa jalur internet agar semua jalur dapat digunakan secara optimal. PCC (Per Connection Classifier) membagi koneksi berdasarkan jumlah koneksi per jalur, berbeda dengan NTH yang membagi berdasarkan paket ke-N. Tujuan utama PCC adalah memastikan setiap jalur aktif, mencegah overload, dan memaksimalkan stabilitas jaringan.
Manfaat PCC Mikrotik
- Distribusi koneksi internet merata di semua ISP.
- Optimasi bandwidth dan performa jaringan.
- Meningkatkan stabilitas koneksi untuk semua perangkat.
- Dukungan prioritas trafik, misalnya untuk gaming, streaming, atau VoIP.
Persiapan Sebelum Konfigurasi
- Router Mikrotik dengan minimal tiga interface aktif.
- IP dan gateway untuk setiap ISP sudah diketahui.
- Memahami dasar firewall, NAT, dan mangle rules di Mikrotik.
Langkah-Langkah Load Balancing PCC 3 Jalur
1. Konfigurasi Interface dan IP
Atur nama interface dan IP untuk masing-masing jalur ISP:
/interface ethernet set [ find default-name=ether1 ] name=ether1-100M set [ find default-name=ether2 ] name=ether2-INDI-20M set [ find default-name=ether3 ] name=ether3-INDI-50M /ip address add address=192.168.10.4/24 interface=ether1-100M network=192.168.10.0 add address=192.168.7.4/24 interface=ether3-INDI-50M network=192.168.7.0 add address=192.168.9.4/24 interface=ether2-INDI-20M network=192.168.9.0
2. Konfigurasi DNS dan Keamanan Router
Pastikan router dapat melakukan resolve domain dan mengamankan jaringan:
/ip dns set allow-remote-requests=yes servers=1.1.1.1,1.0.0.1,8.8.8.8 /interface wireless security-profiles set [ find default=yes ] supplicant-identity=MikroTik
3. Firewall dan Mangle Rules
Gunakan mangle untuk menandai koneksi dan paket agar jalur tertentu dapat diprioritaskan:
/ip firewall filter add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=27000-28998 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=27000-28998 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward comment=ML connection-rate=0-256k dst-port=30097-30147,5000-5508,5551-5558,5601-5608,5651-5658 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=5000-5508,5551-5558,5601-5608,5651-5658 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward comment=PUBG connection-rate=0-256k dst-port=10001-10010,21750 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=10491,10010,10013,10612,20002,20001,20000,12235,13748,7086-7995 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=12070-12460,41182-41192,13972,13894,11455,10096,10039 in-interface=ether5 protocol=udp
4. NAT dan Routing
Aktifkan NAT masquerade dan buat routing rules sesuai mark koneksi:
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether1-100M add action=masquerade chain=srcnat out-interface=ether3-INDI-50M add action=masquerade chain=srcnat out-interface=ether2-INDI-20M /ip route add check-gateway=ping distance=1 gateway=192.168.7.1 routing-mark=game add check-gateway=ping distance=1 gateway=192.168.9.1 routing-mark=4 add check-gateway=ping distance=1 gateway=192.168.10.1 routing-mark=3
5. Monitoring dan Optimasi
Setelah konfigurasi:
- Cek status jalur melalui IP → Routes.
- Gunakan Torch atau Traffic Monitor untuk melihat distribusi paket.
- Sesuaikan mangle rules jika ada jalur yang kurang optimal.
Tips Troubleshooting
- Jalur tidak terbagi merata: Pastikan per-connection-classifier di mangle sudah benar.
- Ping gagal ke gateway: Periksa koneksi fisik dan IP interface masing-masing ISP.
- Trafik tertentu lambat: Gunakan connection-mark untuk memprioritaskan trafik penting.
Kesimpulan
Dengan load balancing PCC Mikrotik 3 jalur, Anda dapat memanfaatkan semua ISP secara maksimal, meningkatkan stabilitas, dan performa jaringan. Metode ini cocok untuk rumah, kantor kecil, atau warnet yang membutuhkan koneksi internet cepat dan stabil.
Referensi dan Bacaan Tambahan
ini code lengkapnya# ================================ # 1. Konfigurasi Interface # ================================ /interface ethernet set [ find default-name=ether1 ] name=ether1-100M set [ find default-name=ether2 ] name=ether2-INDI-20M set [ find default-name=ether3 ] name=ether3-INDI-50M # ================================ # 2. Wireless Security Profile # ================================ /interface wireless security-profiles set [ find default=yes ] supplicant-identity=MikroTik # ================================ # 3. User Group Permissions # ================================ /user group set read policy=local,telnet,ssh,ftp,reboot,read,write,policy,test,winbox,password,web,sniff,sensitive,api,romon,dude,tikapp set write policy=local,telnet,ssh,ftp,reboot,read,write,policy,test,winbox,password,web,sniff,sensitive,api,romon,dude,tikapp # ================================ # 4. Konfigurasi IP Address # ================================ /ip address add address=192.168.10.4/24 interface=ether1-100M network=192.168.10.0 add address=192.168.80.1/24 interface=ether5 network=192.168.80.0 add address=192.168.7.4/24 interface=ether3-INDI-50M network=192.168.7.0 add address=192.168.9.4/24 interface=ether2-INDI-20M network=192.168.9.0 # ================================ # 5. DNS Configuration # ================================ /ip dns set allow-remote-requests=yes servers=1.1.1.1,1.0.0.1,8.8.8.8 # ================================ # 6. Firewall Filter Rules (IPGAME) # ================================ /ip firewall filter add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=27000-28998 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=27000-28998 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward comment=ML connection-rate=0-256k dst-port=30097-30147,5000-5508,5551-5558,5601-5608,5651-5658 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=5000-5508,5551-5558,5601-5608,5651-5658 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward comment=PUBG connection-rate=0-256k dst-port=10001-10010,21750 in-interface=ether5 protocol=tcp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=10491,10010,10013,10612,20002,20001,20000,12235,13748,7086-7995 in-interface=ether5 protocol=udp add action=add-dst-to-address-list address-list=IPGAME address-list-timeout=1h chain=forward connection-rate=0-256k dst-port=12070-12460,41182-41192,13972,13894,11455,10096,10039 in-interface=ether5 protocol=udp # ================================ # 7. Firewall Mangle Rules # ================================ /ip firewall mangle # Mark Routing untuk IPGAME add action=mark-routing chain=prerouting connection-rate=0-512k dst-address-list=IPGAME in-interface=ether5 new-routing-mark=game passthrough=no # Mark Connection untuk tiap ISP add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=!IPGAME in-interface=ether2-INDI-20M new-connection-mark=indicn1 passthrough=yes add action=mark-packet chain=output connection-mark=indicn1 new-packet-mark=1 passthrough=no add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=!IPGAME in-interface=ether3-INDI-50M new-connection-mark=indicn2 passthrough=yes add action=mark-packet chain=output connection-mark=indicn2 new-packet-mark=2 passthrough=no add action=mark-connection chain=prerouting connection-mark=no-mark dst-address-list=!IPGAME in-interface=ether1-100M new-connection-mark=iconcn3 passthrough=yes add action=mark-packet chain=output connection-mark=iconcn3 new-packet-mark=3 passthrough=no # Mark Connection berdasarkan per-connection-classifier (PCC) add action=mark-connection chain=prerouting dst-port=80,8080 in-interface=ether5 new-connection-mark=indicn100-1 passthrough=yes per-connection-classifier=src-address-and-port:4/3 protocol=tcp src-address=192.168.80.0/24 add action=mark-routing chain=prerouting connection-mark=indicn100-1 in-interface=ether5 new-routing-mark=1 passthrough=no # Tambahkan rule PCC lainnya sesuai konfigurasi awal... # (Anda bisa melanjutkan untuk indicn50-1, indicn100-2, indicn502-1 seperti kode lama, tetap format seperti ini) # ================================ # 8. NAT Masquerade # ================================ /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1-100M add action=masquerade chain=srcnat out-interface=ether3-INDI-50M add action=masquerade chain=srcnat out-interface=ether2-INDI-20M # ================================ # 9. Routing # ================================ /ip route add check-gateway=ping distance=1 gateway=192.168.7.1 routing-mark=game add check-gateway=ping distance=1 gateway=192.168.9.1 routing-mark=4 add check-gateway=ping distance=1 gateway=192.168.10.1 routing-mark=3 add check-gateway=ping distance=1 gateway=192.168.7.1 routing-mark=2 add check-gateway=ping distance=1 gateway=192.168.10.1 routing-mark=1 add check-gateway=ping distance=1 gateway=192.168.10.1 add check-gateway=ping distance=2 gateway=192.168.7.1 add check-gateway=ping distance=3 gateway=192.168.9.1
Rabu, 03 Maret 2021
Beberapa cara mudah meringkan Os Ubuntu
Sepertinya, barusan terbersit dalam pikiran saya, bahwa judul yang tepat untuk tulisan ini adalah Beberapa cara mudah optimasi ubuntu dekstop. Sepertinya judul ini lebih menarik, karena orang kita Indonesia ini paling tertarik sama yang namanya optimasi-optimasian.
Tidak seperti windows, yang mana secara bawaan atau builtin telah ada aplikasi defrag dan disk clean didalamnya. Namun berbeda dengan ubuntu tool tersebut tidak ada untuk melegakan harddisk yang kepenuhan.
Lalu jika tool seperti defrag dan disk clean up milik windows tidak ada di ubuntu, bagaimana caranya kita mengosongkan harddisk yang penuh dengan sampah aplikasi, atau bagaimana caranya agar system ubuntu desktop kita selalu bersih dan fresh?.
Berikut beberapa cara mudah optimasi meringankan os ubuntu kita punya:
- Bersihkan Apt cache dan lakukan itu secara berkala.
- Bersihkan atau hapus kernel lama yang sudah tidak di gunakan.
- Bersihkan cache Thumbnail
- Hapus file dan folder yang sudah tidak digunakan.
- Bersihkan paket yang sudah tak lagi digunakan
- Rajin - rajin mengupdate os ubuntu anda
- Hapus Snapd
- Hapus log journalctl
Jumat, 29 Januari 2021
Password Modem Huawei HG8245H
Username : root Password : admin
Username : Admin Password : admin
Username : telecomadmin Password : admintelecom
Username : Support Password : theworldinyourhand
Username : telecomadmin Password : zep2kjzol
Username : Support Password : zep2kjzol Kamis, 17 Desember 2020
Cara Cek keValidan NIB Perusahaan
Rabu, 11 November 2020
Cara Menghilangkan Iklan Folder Apps Xiaomi - Promoted Apps pada More Apps

Kita sebagai pemakai mungkin harus rela dan sabar untuk membiarkan aplikasi mereka yang penuh iklan jikalau kita tidak mempunyai biaya untuk membeli aplikasi tersebut agar iklannya hilang.
Kamis, 05 November 2020
Error Tidak Dapat Access Database Engine 2007 Pada Komputer Anda - Install e-SPT Masa 21-26 2014
Selasa, 27 Oktober 2020
Membuat Baca Tulis File Di Python
Membuat Baca Tulis File di Python (Lengkap + Contoh Praktis) – Python adalah salah satu bahasa pemrograman paling populer saat ini karena sederhana, fleksibel, dan mudah dipahami. Salah satu kemampuan dasar yang penting dikuasai adalah bagaimana Python bekerja dengan file. Hampir semua aplikasi nyata, dari program kecil hingga aplikasi besar, membutuhkan fitur untuk menyimpan data atau membaca kembali informasi yang sudah ada.
Pada artikel ini, kita akan belajar secara detail tentang cara membaca dan menulis file di Python. Saya akan membahas berbagai mode yang digunakan dalam membuka file, memberikan contoh kode, menjelaskan langkah demi langkah, dan menyertakan studi kasus sederhana sehingga pembaca bisa langsung mempraktikkannya. Artikel ini ditulis panjang agar bisa menjadi referensi belajar yang lengkap sekaligus SEO-friendly.
Pendahuluan: Pentingnya Belajar File Handling di Python
Sebelum kita mulai menulis kode, mari kita pahami dulu kenapa file handling atau pengelolaan file sangat penting dalam pemrograman.
- Menyimpan Data – Saat program berjalan, kita mungkin ingin menyimpan hasil input pengguna, catatan log, atau data sementara.
- Membaca Data – Program perlu membaca file konfigurasi, data pelatihan, atau bahkan teks panjang dari luar agar bisa digunakan.
- Transfer Informasi – File bisa digunakan untuk bertukar data antar sistem, misalnya CSV untuk data tabular.
- Pembangunan Aplikasi – Hampir semua aplikasi, bahkan yang sederhana, pasti membutuhkan fitur simpan dan baca data.
Dengan menguasai dasar ini, kita akan lebih mudah saat melangkah ke materi yang lebih kompleks seperti bekerja dengan database (MySQL, PostgreSQL, SQLite), API, maupun framework besar seperti Django atau Flask.
Fungsi open() di Python
Fungsi utama untuk membuka file di Python adalah open(). Formatnya sederhana:
open(nama_file, mode)
Parameter nama_file adalah string berisi nama file yang ingin dibuka, sedangkan mode adalah perintah akses, apakah ingin membaca, menulis, atau menambahkan isi file.
Mode Akses File
Berikut adalah mode-mode penting dalam Python:
- r : Membaca file (default). Jika file tidak ada, akan error.
- w : Menulis file baru. Jika file sudah ada, isinya akan ditimpa.
- a : Menambahkan data di akhir file tanpa menghapus isi lama.
- r+ : Membaca dan menulis sekaligus.
- w+ : Membaca dan menulis, tetapi file akan dikosongkan dulu.
- a+ : Membaca dan menulis dengan menambahkan di akhir file.
Selain itu, kita juga bisa menambahkan huruf b untuk file biner (misalnya gambar, PDF), sehingga mode bisa menjadi rb, wb, dan sebagainya.
Contoh Membaca File di Python
Untuk membaca file, kita gunakan mode r. Misalnya, kita punya file bernama belajar.txt.
ex = open("belajar.txt", "r")
hasil = ex.readlines()
for i in range(len(hasil)):
print(hasil[i])
ex.close()
Penjelasan:
open("belajar.txt","r")membuka file untuk dibaca.readlines()membaca semua baris dan menyimpannya dalam list.fordigunakan untuk menampilkan isi baris demi baris.close()menutup file agar tidak terjadi kebocoran memori.
Contoh Menulis File di Python
Untuk menulis data, kita bisa gunakan mode w. Contoh:
ex = open("belajar.txt", "w")
ex.write("Halo, ini adalah data baru.\n")
ex.close()
Kode ini akan membuat file baru bernama belajar.txt jika belum ada. Jika sudah ada, maka isi lama akan hilang dan diganti dengan teks baru.
Contoh Menambahkan Data ke File
Mode a memungkinkan kita menambahkan teks tanpa menghapus isi lama.
ex = open("belajar.txt", "a")
ex.write("Baris tambahan ke file.\n")
ex.close()
Jika dijalankan berulang kali, baris baru akan terus ditambahkan di akhir file.
Contoh Menggunakan Input Pengguna
Kita juga bisa meminta input dari user lalu menyimpannya ke file:
nama = input("Masukkan Nama: ")
alamat = input("Masukkan Alamat: ")
hasil = "Nama: {} \nAlamat: {}\n".format(nama, alamat)
batas = "============================================\n"
ex = open("belajar.txt", "a")
ex.writelines(hasil)
ex.writelines(batas)
ex.close()
Kode ini akan menyimpan nama dan alamat yang dimasukkan pengguna ke dalam file, lengkap dengan garis pembatas di setiap data baru.
Membaca File dengan with open()
Best practice dalam Python adalah menggunakan with open() agar file otomatis ditutup setelah digunakan. Contoh:
with open("belajar.txt", "r") as file:
for baris in file:
print(baris)
Cara ini lebih aman karena tidak perlu memanggil close() secara manual.
Studi Kasus: Menyimpan Data Siswa ke File
Kita bisa membuat program sederhana untuk menyimpan daftar siswa:
jumlah = int(input("Masukkan jumlah siswa: "))
with open("siswa.txt", "a") as file:
for i in range(jumlah):
nama = input("Nama siswa: ")
kelas = input("Kelas: ")
file.write(f"Nama: {nama}, Kelas: {kelas}\n")
Setelah program dijalankan, semua data siswa akan tersimpan di file siswa.txt. Kita bisa membukanya dengan mode baca untuk melihat daftar tersebut.
Membaca File CSV dengan Python
CSV (Comma Separated Values) adalah format umum untuk data tabular. Python punya modul bawaan csv untuk membacanya.
import csv
with open("data.csv", "r") as file:
reader = csv.reader(file)
for row in reader:
print(row)
Dengan kode di atas, setiap baris CSV akan dibaca sebagai list Python.
Kesalahan Umum saat Mengelola File
- FileNotFoundError – Terjadi jika file tidak ditemukan. Solusi: pastikan path file benar.
- PermissionError – Terjadi jika tidak punya hak akses. Solusi: jalankan program dengan izin yang sesuai.
- Encoding Error – Jika file berisi karakter non-ASCII. Solusi: gunakan parameter
encoding="utf-8"saat membuka file.
Tips dan Best Practice
- Gunakan
with open()untuk keamanan. - Selalu tutup file setelah digunakan.
- Gunakan mode yang sesuai agar data tidak hilang.
- Pakai
try-exceptuntuk menangani error.
Kesimpulan
Belajar baca tulis file di Python adalah pondasi penting sebelum masuk ke pemrograman lebih lanjut. Kita sudah membahas cara membaca, menulis, menambahkan data, membaca file CSV, hingga tips keamanan. Dengan menguasai materi ini, Anda akan lebih mudah melangkah ke database, pemrosesan data besar, dan pembuatan aplikasi nyata.
Semoga artikel ini bisa membantu dan menjadi catatan belajar yang bermanfaat. Selamat mencoba dan terus berlatih dengan kode Python!
Belajar Setting Mikrotik - Belajar Pemrograman Java - Belajar Pemrograman Pascal Belajar PHP OOP
Cari Blog Ini
Arsip Blog
- September 2025 (1)
- Maret 2025 (1)
- Juli 2024 (1)
- Januari 2023 (2)
- Desember 2022 (2)
- November 2022 (4)
- Oktober 2022 (1)
- April 2022 (1)
- Februari 2022 (1)
- Desember 2021 (1)
- November 2021 (1)
- Agustus 2021 (1)
- April 2021 (1)
- Maret 2021 (2)
- Januari 2021 (1)
- Desember 2020 (1)
- November 2020 (2)
- Oktober 2020 (3)
- September 2020 (2)
- Juli 2020 (1)
- Februari 2020 (2)
- Januari 2020 (1)
- Agustus 2019 (2)
- Mei 2019 (4)
- April 2019 (3)
- November 2018 (3)
- Oktober 2018 (5)
- September 2018 (6)
- April 2018 (1)
- Maret 2018 (1)
- Februari 2018 (2)
- Oktober 2017 (1)
- September 2017 (1)
- Juli 2017 (1)
- Mei 2017 (1)
- April 2017 (1)
- Maret 2017 (4)
- Februari 2017 (5)
- November 2016 (1)
- Oktober 2016 (4)
- September 2016 (4)
- Agustus 2016 (7)
- Juni 2016 (3)
- Mei 2016 (5)
- April 2016 (6)
- Maret 2016 (6)
- Februari 2016 (10)
- Januari 2016 (2)
- Desember 2015 (2)
- November 2015 (4)
- September 2015 (4)
- Agustus 2015 (2)
- Juli 2015 (10)
- Mei 2015 (4)
- Februari 2015 (2)
- Januari 2015 (1)
- November 2014 (6)
- Oktober 2014 (1)
- Agustus 2014 (2)
- Juli 2014 (2)
- Juni 2014 (2)
- Maret 2014 (3)
- Januari 2014 (2)
- Desember 2013 (2)
- November 2013 (3)
- Oktober 2013 (2)
- September 2013 (1)
- Juli 2013 (2)
- Juni 2013 (4)
- Mei 2013 (5)
- April 2013 (2)
- Maret 2013 (3)
- Februari 2013 (5)
- Januari 2013 (1)
- Desember 2012 (6)
- November 2012 (6)
- Oktober 2012 (2)
- September 2012 (3)
- Agustus 2012 (4)
- Juli 2012 (2)
- Juni 2012 (1)
- Mei 2012 (1)
- April 2012 (4)
- Maret 2012 (3)
- Februari 2012 (8)
- Januari 2012 (4)
- Desember 2011 (4)
- November 2011 (1)
- Oktober 2011 (3)
- September 2011 (8)
- Agustus 2011 (2)
- Juli 2011 (14)
- Juni 2011 (6)
- Mei 2011 (5)
- April 2011 (2)
- Maret 2011 (8)
- Februari 2011 (12)
- Januari 2011 (6)
- Desember 2010 (4)
- November 2010 (4)
- Oktober 2010 (9)
- September 2010 (4)
- Agustus 2010 (7)
- Juli 2010 (1)
- Juni 2010 (4)
- Mei 2010 (7)
- April 2010 (11)
- Maret 2010 (3)
- Februari 2010 (1)
- Januari 2010 (2)
- Agustus 2009 (2)
- Juli 2009 (2)
- Juni 2009 (1)
- Februari 2009 (2)
- November 2008 (5)
- Oktober 2008 (3)
- September 2008 (2)
- Agustus 2008 (3)
Postingan Populer
-
Pengertian Masquerade MikroTik: Fungsi, Cara Setting & Contoh Konfigurasi Lengkap (Panduan RouterOS 5000+ Kata) Jika Anda sedang men...
-
Error 404: Not Found User Manager Mikrotik - Pengusaha hotspotan pengusaha jasa setting mikrotik mungkin suatu waktu akan bertemu dengan e...
-
Jasa setting mikrotik - Pengertian Routing Mikrotik ,router merupakan sebuah perangkat untuk menghubungkan jaringan publik dengan jaringan p...