GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Python Tutorial
  • Data Types
  • Interview Questions
  • Examples
  • Quizzes
  • DSA Python
  • Data Science
  • NumPy
  • Pandas
  • Practice
  • Django
  • Flask
  • Introduction1 min read
  • Input & Output2 min read

This view

  • Original page
  • New address

GeezerVison is showing www.geeksforgeeks.org — Execute a String of Code in Python - GeeksforGeeks

geeksforgeeks
search icon
  • Courses
  • Tutorials
  • Interview Prep
  • Python Tutorial
  • Data Types
  • Interview Questions
  • Examples
  • Quizzes
  • DSA Python
  • Data Science
  • NumPy
  • Pandas
  • Practice
  • Django
  • Flask

Execute a String of Code in Python

Last Updated : 13 Aug, 2026

Given a string containing Python code, the task is to execute it dynamically. For example:

Input: "x = 5\ny = 10\nprint(x + y)"
Output: 15

Below are multiple methods to execute a string of Python code efficiently.

Using exec()

exec() function allows us to execute dynamically generated Python code stored in a string.

Python
code = "x = 5\ny = 10\nprint(x + y)"
exec(code)

Output
15

Explanation:

  • exec(code) executes the string code as Python code.
  • Variables x and y are created, and their sum is printed.

Using eval()

eval() function can execute a single expression stored in a string and return its result. It is more limited compared to exec() but can be useful for evaluating expressions.

Python
code = "5 + 10"
res = eval(code)
print(res)

Output
15

Using compile() with exec() or eval()

compile() converts a string into a code object, which can then be executed multiple times using exec() or eval(). Useful when the same code is run repeatedly.

Python
code = "x = 5\ny = 10\nprint(x + y)"
res = compile(code, '<string>', 'exec')
exec(res)

Output
15

Explanation:

  • compile(code, '<string>', 'exec') compiles the string into a code object.
  • exec(compiled_code) executes the compiled code.

Using subprocess module

If we want to execute the code in a separate process, we can use the subprocess module. This is more suitable for executing standalone scripts or commands.

Python
import subprocess
code = "print(5 + 10)"
subprocess.run(["python3", "-c", code])

Output
15

Explanation:

  • subprocess.run([...]) runs a separate Python process.
  • -c flag allows passing code directly as a string.
Comment

Explore

    Python Fundamentals
    • Introduction1 min read
    • Input & Output2 min read
    • Variables4 min read
    • Operators4 min read
    • Keywords2 min read
    • Data Types4 min read
    • Conditional Statements3 min read
    • Loops3 min read
    • Functions4 min read
    Python Data Structures
    • String4 min read
    • List3 min read
    • Tuples3 min read
    • Dictionary3 min read
    • Set2 min read
    • Arrays5 min read
    Advanced Python
    • OOP Concepts3 min read
    • Exception Handling5 min read
    • File Handling4 min read
    • Python Database2 min read
    • MongoDB3 min read
    • MySQL7 min read
    • Packages4 min read
    • Modules3 min read
    • DSA Libraries5 min read
    • Python GUI2 min read
    Data Science with Python
    • Numpy3 min read
    • Pandas4 min read
    • Matplotlib3 min read
    • Seaborn3 min read
    • StatsModel2 min read
    • Model Building6 min read
    • TensorFlow2 min read
    • PyTorch5 min read
    Web Development with Python
    • Flask3 min read
    • Django5 min read
    • Django ORM4 min read
    • Jinja2 Templating5 min read
    • Django Templates5 min read
    • REST API3 min read
    • Build API with DRF4 min read
    Python Practice
    • Quiz1 min read
    • Practice Problems2 min read
    • Interview Q & A15+ min read
    Courses
    • Placement 360 Course2 min read
    • Data Science 360 Course2 min read
    • AI Engg Course2 min read
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.