open dan write di Python


Tulisan ini membahas hal yang sama dengan tulisan sebelumnya pada open dan println di Julia dan fopen dan fprintf di Octave. Bahasa pemrograman yang digunakan kali ini adalah Python.

Waktu Kejadian,Lintang,Bujur,Magnitude,Kedalaman,Wilayah,Shakemap
2014-01-27 23:14:02 WIB,8.16 LS,109.26 BT,5.3 SR,33 Km,Jawa Tengah ,Shakemap
2014-01-26 21:43:11 WIB,4.78 LU,95.3 BT,3.7 SR,10 Km,Aceh ,Shakemap
2014-01-25 23:58:02 WIB,8.33 LS,109.22 BT,4.8 SR,73 Km,Jawa Tengah ,Shakemap
2014-01-25 12:14:20 WIB,8.48 LS,109.17 BT,6.5 SR,48 Km,Jawa Tengah ,Shakemap
2014-01-24 21:36:22 WIB,4.4 LU,95.31 BT,4.8 SR,10 Km,NAD ,Shakemap
2014-01-24 20:37:46 WIB,8.15 LS,124.83 BT,4.9 SR,10 Km,NTT ,Shakemap
2014-01-23 14:29:23 WIB,5.16 LU,95.39 BT,4.2 SR,109 Km,NAD ,Shakemap
2014-01-22 13:00:17 WIB,2.07 LS,115.53 BT,3.6 SR,10 Km,Kalimantan Selatan ,Shakemap
2014-01-18 07:19:55 WIB,2.5 LS,136.33 BT,4.8 SR,12 Km,Papua ,Shakemap
2014-01-09 23:16:48 WIB,7.12 LS,105.37 BT,5.2 SR,10 Km,BANTEN ,Shakemap
2014-01-09 19:05:48 WIB,0.88 LS,100.66 BT,4.1 SR,10 Km,Sumatera Barat ,Shakemap
2014-01-05 10:42:12 WIB,0.69 LS,131.24 BT,3.2 SR,12 Km,Papua Barat ,Shakemap

Data di atas, "datagempa.csv", akan dibaca oleh Python. Kemudian, hanya data lintang dan bujur yang akan disimpan kembali dengan nama "data_lintang_bujur.csv". Berikut kode Python yang digunakan.

# Baca file datagempa.csv
File_ori = open('datagempa.csv','r')

# Buat file baru data_lintang_bujur.csv
File_new = open('data_lintang_bujur.csv','w')

# Baca datagempa.csv baris per baris
for line in File_ori:
  # Hapur enter, "\n", kemudian
  # Pisahkan data berdasarkan koma

  temp = line.replace('\n','').split(',')
 
  # Simpan data lintang dan bujur
  # pada file baru data_lintang_bujur.csv
 

  File_new.write(','.join(temp[1:3])+'\n')

# Tutup semua file yang terbuka
File_ori.close()
File_new.close()

Setelah program di atas dijalankan, hasilnya akan seperti di bawah ini.

Lintang,Bujur
8.16 LS,109.26 BT
4.78 LU,95.3 BT
8.33 LS,109.22 BT
8.48 LS,109.17 BT
4.4 LU,95.31 BT
8.15 LS,124.83 BT
5.16 LU,95.39 BT
2.07 LS,115.53 BT
2.5 LS,136.33 BT
7.12 LS,105.37 BT
0.88 LS,100.66 BT
0.69 LS,131.24 BT

Program dapat pula didownload di sini.