Error Message

  NameError: name 'x' is not defined
  

What It Means

Python raised NameError because something in your code violated language rules or runtime expectations.

Common Causes

  1. Typo in variable, function, or module name
  2. Wrong data type for the operation
  3. Missing import or uninstalled dependency
  4. Incorrect indentation or syntax

How to Fix

Define the variable before use; check spelling and scope.

Example

  # Problem scenario related to NameError
# ... code that triggers the error ...

# Fixed version
# Apply the fix described above
  

Prevention

  • Run python -m py_compile script.py before committing
  • Use a linter (ruff, flake8) and type checker (mypy)
  • Write tests for edge cases (empty input, None, zero)