exec() Execute code block

Last updated: 2026-09-22

exec() Execute code block

exec() executes Python code (statements or blocks) from a string; returns None.

CategoryBuilt-in Functions
KindBuilt-in Function
Python Versionall

📝 Syntax

exec(code[, globals[, locals]])

⚙️ Parameters

code RequiredCode to execute: a string, bytes, or code object.
globals OptionalThe global namespace dict.(Default:None)
locals OptionalThe local namespace dict.(Default:None)

Returns:None; statements in the code take effect in the caller.

💥 Raises

▶ Example

Edit the code, press Run, and see the result in the output panel:

Output:

6
y = 6
More case studies coming soon — check back later.

❓ FAQ

QAfter exec('y = 1'), can I use y directly?
AAt module top level, yes; but inside a function, no — assignments in exec do not write into local variables. The safe approach is exec(code, ns) and then read from the ns dict.
QDoes exec() return a value?
ANo, it always returns None; results are read back through the namespace dict, e.g. exec('y = x * 2', ns) then ns['y'].
QWhen should I use exec() versus eval()?
AUse exec for running multi-line statements and defining functions; use eval for evaluating a single expression's value. Their security warning is the same — never run untrusted input.
QHow do I use exec's globals argument?
Aexec(code, {'x': 3}) runs the code only in the given namespace without polluting the outside environment — a common way to isolate an execution context.
Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏