Daftar Referensi Python
exec() menjalankan string atau objek code sebagai sekumpulan pernyataan Python. Gunakan hanya pada sumber yang kamu percaya.
Sintaks
exec(source, globals=None, locals=None, *, closure=None)
Parameter
| Parameter | Wajib? | Keterangan |
|---|---|---|
source |
Ya | String atau objek code yang akan dijalankan |
globals |
Tidak | Dictionary namespace global |
locals |
Tidak | Mapping namespace lokal |
closure |
Tidak | Tuple cell untuk free variable pada objek code |
Nilai balik: None.
Contoh
exec('print("Halo dari exec")')
Output:
Halo dari exec
Contoh Lainnya
Memakai namespace terpisah
ruang = {}
exec("hasil = 7 + 5", ruang)
print(ruang["hasil"])
Output:
12
Menjalankan beberapa baris
code = """
for angka in range(3):
print(angka)
"""
exec(code)
Output:
0
1
2
Menjalankan hasil compile()
objek_code = compile(
"nilai = 5 ** 2",
"<contoh>",
"exec",
)
ruang = {}
exec(objek_code, ruang)
print(ruang["nilai"])
Output:
25
Kesalahan Umum
- Menjalankan input yang tidak dipercaya dapat membuka celah keamanan serius.
- String dengan sintaks salah menghasilkan
SyntaxError. globalsharus berupa dictionary; tipe lain menghasilkanTypeError.
Pelajari Lebih Lanjut
- Referensi: compile() · eval() · globals()
- Buku Belajar Python untuk Pemula: Bab 16
