Argumen sumber diuraikan dan dievaluasi sebagai ekspresi Python (secara teknis, daftar kondisi) menggunakan pemetaan global dan lokal sebagai namespace global dan lokal. Jika kamus global ada dan tidak berisi nilai untuk kunci __builtins__, referensi ke kamus modul bawaan bawaan dimasukkan di bawah kunci tersebut sebelum sumber diurai. Mengganti __builtins__ dapat digunakan untuk membatasi atau mengubah nama yang tersedia, namun ini bukan mekanisme keamanan: kode yang dieksekusi masih dapat mengakses semua bawaan. Jika pemetaan lokal dihilangkan, maka defaultnya adalah
eval(expression, globals=None, locals=None)
>>> x = 1
>>> eval('x+1')
2