A run configuration tells PyCharm what to execute, with which interpreter, arguments, and working directory.
Understanding the Concept
For a simple script, PyCharm can create a temporary or saved Python run configuration when you choose Run. Open Run > Edit Configurations to inspect script path, parameters, environment variables, and working directory. These settings explain why two executions of the same file might behave differently. Script arguments arrive in sys.argv and relative paths are resolved against the working directory, not necessarily the script’s folder.
When and Why You Would Use This
You do not need complex configurations for basic programs, but learning to inspect them prevents difficult-to-diagnose file path problems later. Give saved configurations meaningful names when a project contains several scripts.
Practical Example
import os
import sys
print("Script:", sys.argv[0])
print("Working directory:", os.getcwd())
Understanding the Example
The output shows the launched script path and its current working directory. These values may be different. If the file path in a later example is relative, the working directory determines where Python looks for it.
Example Output
Script: /tmp/knowstuff_python_qa_6autq_z5/example.py
Working directory: /tmp/knowstuff_python_qa_6autq_z5
Try It Yourself
Open Edit Configurations and identify the script path and working directory for your first project.
Common Beginner Mistakes
- Assuming the working directory always equals the folder containing the script.
- Running an old configuration after renaming or moving a file.
- Putting script arguments in the interpreter-options field instead of the script-parameters field.
Key Takeaways
- Run configurations choose the file, interpreter, and execution settings.
- Working directory controls relative file paths.
- Inspect configurations when PyCharm and terminal results differ.