Reputation: 13
data = [{'Nama' : 'Ahmad', 'Jurusan' : 'Informatika', 'Semester' : 2, 'Angkatan' : ''},
{'Nama' :'' , 'Jurusan' : 'Pertanian ' , 'Semester' : '' , 'Angkatan' : 2017},
{'Nama' : 'Insan', 'Jurusan' : '' , 'Semester' : 3, 'Angkatan' : ''},
{'Nama' : 'Malik', 'Jurusan' : '' , 'Semester' : 6, 'Angkatan' : 2018},
{'Nama' : '', 'Jurusan' : 'Kehutanan', 'Semester' : '' , 'Angkatan' : 2015}]
Upvotes: 1
Views: 54
Reputation: 11342
You can use list comprehension for this
This replaces the empty values with NewStr
data = [{'Nama' : 'Ahmad', 'Jurusan' : 'Informatika', 'Semester' : 2, 'Angkatan' : ''},
{'Nama' :'' , 'Jurusan' : 'Pertanian ' , 'Semester' : '' , 'Angkatan' : 2017},
{'Nama' : 'Insan', 'Jurusan' : '' , 'Semester' : 3, 'Angkatan' : ''},
{'Nama' : 'Malik', 'Jurusan' : '' , 'Semester' : 6, 'Angkatan' : 2018},
{'Nama' : '', 'Jurusan' : 'Kehutanan', 'Semester' : '' , 'Angkatan' : 2015}]
d2 = [{k:v if v else 'NewStr' for k,v in e.items()} for e in data]
print(d2)
Output
[{'Nama': 'Ahmad', 'Jurusan': 'Informatika', 'Semester': 2, 'Angkatan': 'NewStr'},
{'Nama': 'NewStr', 'Jurusan': 'Pertanian ', 'Semester': 'NewStr', 'Angkatan': 2017},
{'Nama': 'Insan', 'Jurusan': 'NewStr', 'Semester': 3, 'Angkatan': 'NewStr'},
{'Nama': 'Malik', 'Jurusan': 'NewStr', 'Semester': 6, 'Angkatan': 2018},
{'Nama': 'NewStr', 'Jurusan': 'Kehutanan', 'Semester': 'NewStr', 'Angkatan': 2015}]
Upvotes: 1