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")')

Coba di IDE

Output:

Halo dari exec

Contoh Lainnya

Memakai namespace terpisah

ruang = {}
exec("hasil = 7 + 5", ruang)
print(ruang["hasil"])

Coba di IDE

Output:

12

Menjalankan beberapa baris

code = """
for angka in range(3):
    print(angka)
"""
exec(code)

Coba di IDE

Output:

0
1
2

Menjalankan hasil compile()

objek_code = compile(
    "nilai = 5 ** 2",
    "<contoh>",
    "exec",
)
ruang = {}
exec(objek_code, ruang)
print(ruang["nilai"])

Coba di IDE

Output:

25

Kesalahan Umum

  • Menjalankan input yang tidak dipercaya dapat membuka celah keamanan serius.
  • String dengan sintaks salah menghasilkan SyntaxError.
  • globals harus berupa dictionary; tipe lain menghasilkan TypeError.

Pelajari Lebih Lanjut