Dev In The Mountain Header
A Developer In The mountains having fun

Python Development Environment

Setting up a good development environment is crucial for productive Python programming. This guide will help you choose and configure the right tools for writing, running, and debugging Python code.

What is a Development Environment?

A development environment consists of:

  • Text Editor or IDE: Where you write code
  • Python Interpreter: Executes your code
  • Package Manager: Installs libraries (pip)
  • Version Control: Tracks changes (Git)
  • Terminal/Command Line: Runs commands

Text Editors vs IDEs

Text Editors

Lightweight, fast, and simple. Good for beginners and quick edits.

Popular Text Editors:

  • Sublime Text: Fast, elegant, cross-platform
  • Atom: Open-source, highly customizable (now archived)
  • Notepad++: Windows-only, lightweight
  • Vim/Nano: Command-line editors

Integrated Development Environments (IDEs)

Feature-rich applications with built-in tools for coding, debugging, and project management.

Popular Python IDEs:

  • PyCharm: Professional Python IDE
  • Visual Studio Code: Free, extensible, very popular
  • Spyder: Scientific Python development
  • Thonny: Beginner-friendly Python IDE
  • IDLE: Comes with Python installation

Recommended Setup for Beginners

Option 1: Visual Studio Code (Recommended)

VS Code is free, powerful, and has excellent Python support.

Installation:

  1. Download from code.visualstudio.com
  2. Install for your operating system
  3. Launch VS Code

Essential Extensions:

1. Python (by Microsoft)
   - Syntax highlighting
   - IntelliSense (code completion)
   - Debugging support
   - Linting

2. Python Indent (optional)
   - Correct Python indentation

3. Bracket Pair Colorizer (optional)
   - Color-codes matching brackets

Setting up Python in VS Code:

  1. Open VS Code
  2. Install Python extension from Extensions marketplace
  3. Open a Python file (.py)
  4. Select Python interpreter (Ctrl+Shift+P, then "Python: Select Interpreter")
  5. Choose your installed Python version

Option 2: PyCharm Community Edition

Professional IDE with powerful features, free community version available.

Installation:

  1. Download from jetbrains.com/pycharm
  2. Choose Community Edition (free)
  3. Install and run through setup wizard

Features:

  • Intelligent code completion
  • Built-in debugger
  • Integrated version control
  • Code refactoring tools
  • Project management

Option 3: Thonny (Perfect for Complete Beginners)

Simple, beginner-friendly IDE designed for learning Python.

Installation:

  1. Download from thonny.org
  2. Install for your operating system
  3. Launch Thonny

Features:

  • Simple interface
  • Built-in Python interpreter
  • Step-through debugger
  • Variable inspector
  • Beginner-friendly error messages

Setting Up Your First Python Project

Project Structure

Organize your code with a clear directory structure:

my_python_project/
│
├── main.py              # Main program file
├── utils.py             # Utility functions
├── data/                # Data files
│   └── sample.txt
├── tests/               # Test files
│   └── test_main.py
└── README.md            # Project documentation

Creating a Project in VS Code

  1. Create a new folder for your project
  2. Open VS Code
  3. File → Open Folder → Select your project folder
  4. Create new Python file: File → New File → Save as main.py

Creating a Project in PyCharm

  1. Launch PyCharm
  2. Create New Project
  3. Choose location and Python interpreter
  4. Click Create

Working with the Python Interpreter

Interactive Python Shell

The Python shell lets you test code quickly:

# Start Python shell
$ python
>>> print("Hello, World!")
Hello, World!
>>> x = 5
>>> x * 2
10
>>> exit()

Running Python Files

Execute your Python scripts from the command line:

# Navigate to your project directory
cd path/to/your/project

# Run a Python file
python main.py

# Or on some systems
python3 main.py

Using Python in VS Code

  • Run file: Press F5 or click Run button
  • Run in terminal: Right-click → "Run Python File in Terminal"
  • Interactive window: View → Command Palette → "Python: Start REPL"

Package Management with pip

Installing Packages

# Install a single package
pip install requests

# Install multiple packages
pip install requests beautifulsoup4 pandas

# Install specific version
pip install requests==2.25.1

# Install from requirements file
pip install -r requirements.txt

Managing Project Dependencies

Create a requirements.txt file to list your project's dependencies:

requests==2.25.1
beautifulsoup4==4.9.3
pandas==1.3.0

Generate requirements file from current environment:

pip freeze > requirements.txt

Virtual Environments (Recommended)

Keep project dependencies separate:

# Create virtual environment
python -m venv myproject_env

# Activate (Windows)
myproject_env\Scripts\activate

# Activate (macOS/Linux)
source myproject_env/bin/activate

# Install packages (now isolated to this environment)
pip install requests

# Deactivate when done
deactivate

Debugging Your Code

Using Print Statements

Simple debugging technique for beginners:

def calculate_average(numbers):
    print(f"Input numbers: {numbers}")  # Debug print
    total = sum(numbers)
    print(f"Total: {total}")  # Debug print
    count = len(numbers)
    print(f"Count: {count}")  # Debug print
    average = total / count
    return average

result = calculate_average([10, 20, 30])
print(f"Average: {result}")

Using a Debugger

Set breakpoints and step through code:

VS Code Debugger:

  1. Click in the margin next to line number to set breakpoint
  2. Press F5 to start debugging
  3. Use F10 (step over) and F11 (step into)

PyCharm Debugger:

  1. Click in margin to set breakpoint
  2. Right-click → Debug 'filename'
  3. Use debugger controls to step through code

Python Debugger (pdb)

Built-in Python debugger:

import pdb

def problematic_function(x, y):
    pdb.set_trace()  # Execution will pause here
    result = x / y
    return result

# When this runs, you'll get an interactive debugger prompt
problematic_function(10, 0)

Version Control with Git

Installing Git

  • Windows: Download from git-scm.com
  • macOS: Install via Homebrew: brew install git
  • Linux: sudo apt install git (Ubuntu) or equivalent

Basic Git Workflow

# Initialize repository
git init

# Add files to staging
git add .

# Commit changes
git commit -m "Initial commit"

# Check status
git status

# View commit history
git log

Git Integration in IDEs

Both VS Code and PyCharm have built-in Git support:

  • View changes visually
  • Commit directly from editor
  • Manage branches
  • Resolve merge conflicts

Code Formatting and Style

Python Style Guide (PEP 8)

Follow Python's official style guide:

  • Use 4 spaces for indentation
  • Line length: max 79 characters
  • Use descriptive variable names
  • Add comments for complex logic

Automatic Formatting

Black formatter (recommended):

# Install
pip install black

# Format a file
black my_script.py

# Format all Python files
black .

VS Code Integration:

  1. Install Python extension
  2. Settings → Format on Save → Enable
  3. Choose Black as formatter

Useful Development Tools

Linting (Code Quality Checking)

Pylint - checks for errors and style issues:

pip install pylint
pylint my_script.py

Flake8 - lightweight linter:

pip install flake8
flake8 my_script.py

Type Checking

mypy - optional static type checking:

pip install mypy
mypy my_script.py

Example with type hints:

def greet(name: str) -> str:
    return f"Hello, {name}!"

age: int = 25

Setting Up for Specific Domains

Data Science Setup

# Install Anaconda (includes Jupyter, pandas, numpy, etc.)
# Download from anaconda.com

# Or install individual packages
pip install jupyter pandas numpy matplotlib seaborn

Web Development Setup

# Flask for web applications
pip install flask

# Django for larger web projects
pip install django

# FastAPI for APIs
pip install fastapi uvicorn

GUI Development

# Tkinter (included with Python)
# No installation needed

# PyQt5 for advanced GUIs
pip install PyQt5

# Kivy for mobile-style apps
pip install kivy

Troubleshooting Common Issues

Python Not Found

  • Windows: Reinstall Python and check "Add to PATH"
  • macOS/Linux: Use python3 instead of python

Package Installation Issues

# Upgrade pip
pip install --upgrade pip

# Use --user flag if permission issues
pip install --user package_name

# Clear pip cache
pip cache purge

VS Code Python Not Working

  1. Reload VS Code window: Ctrl+Shift+P → "Developer: Reload Window"
  2. Select correct Python interpreter: Ctrl+Shift+P → "Python: Select Interpreter"
  3. Check Python extension is installed and enabled

Virtual Environment Issues

# Recreate virtual environment if corrupted
rm -rf myenv  # Delete old environment
python -m venv myenv  # Create new one

Best Practices for Development Environment

1. Use Virtual Environments

Keep projects isolated:

# For each new project
python -m venv project_name_env
source project_name_env/bin/activate  # macOS/Linux
# or
project_name_env\Scripts\activate     # Windows

2. Organize Your Code

# Good project structure
project/
├── src/           # Source code
├── tests/         # Test files
├── docs/          # Documentation
├── requirements.txt
└── README.md

3. Use Meaningful Names

# Bad
def calc(x, y):
    return x + y

# Good
def calculate_total_price(base_price, tax_amount):
    return base_price + tax_amount

4. Comment Your Code

# Calculate compound interest
# Formula: A = P(1 + r/n)^(nt)
def compound_interest(principal, rate, time, compounds_per_year=1):
    """
    Calculate compound interest.
    
    Args:
        principal: Initial amount
        rate: Annual interest rate (decimal)
        time: Time in years
        compounds_per_year: Compounding frequency
    
    Returns:
        Final amount after interest
    """
    amount = principal * (1 + rate/compounds_per_year) ** (compounds_per_year * time)
    return amount

Quick Start Checklist

  • Install Python 3.8+
  • Choose and install an editor/IDE (VS Code recommended)
  • Install Python extensions for your editor
  • Create your first Python project folder
  • Write and run "Hello, World!" program
  • Set up version control with Git
  • Create a virtual environment
  • Install a package with pip
  • Try the debugger with a simple program

What's Next?

Now that you have your development environment set up:

Resources


A good development environment makes programming more enjoyable and productive. Take time to learn your tools well - it's an investment that pays off quickly!

More places to find me
Mental Health
follow me on Mastodon