1. Home
  2. Languages
  3. Python
  4. Getting Started with Flask: A Beginner’s Guide to Python Web Development

Getting Started with Flask: A Beginner’s Guide to Python Web Development

Flask is a lightweight and flexible web framework for Python that is perfect for beginners. This guide will walk you through installing Flask, setting up a basic web app, and troubleshooting common errors.


Step 1: Install Python

Why?

Flask is a Python framework, so you need Python installed on your machine.

How?

    • Check if Python is installed:
      Open your terminal (Command Prompt, Powershell, Terminal):
      bash
      python –version

      or
      bash
      python3 –version

      If you see a version number (e.g., Python 3.9.7), Python is installed.

    • If Python is not installed:
        • Follow the installation instructions.
        • Ensure you check the box “Add Python to PATH” during installation (important for using Python from the command line).

Why?

A virtual environment isolates your project and its dependencies from global Python installations.

How?

    • Create a folder for your project:
      bash
      mkdir flask_project
      cd flask_project
    • Create a virtual environment:
      bash
      python -m venv venv

      or, if your system uses python3:
      bash
      python3 -m venv venv

    • Activate the virtual environment:
        • On Windows (Command Prompt):

      venv\Scripts\activate

        • On macOS/Linux:

      source venv/bin/activate

    • You should now see (venv) at the start of your terminal prompt indicating the environment is active.

Step 3: Install Flask

Why?

You need to install the Flask package inside your virtual environment.

How?

    • Run:
      bash
      pip install Flask

Troubleshooting:

    • If pip is not recognized:
        • Ensure your virtual environment is activated.
        • Use python -m pip install Flask as an alternative.
    • If you get permissions errors, make sure you are not using sudo or running outside a virtual environment.

Step 4: Create Your First Flask Application

How?

    • Inside your project folder, create a new Python file, e.g., app.py.
    • Open app.py in a text editor and paste the following starter code:

python
from flask import Flask

app = Flask(name)

@app.route(‘/’)
def home():
return “Hello, Flask!”

if name == “main“:
app.run(debug=True)

    • Explanation:
        • Flask(__name__) initializes the app.
        • @app.route('/') creates a route for the homepage.
        • app.run(debug=True) starts the server with debug mode on (helpful for catching errors).

Step 5: Run Your Flask Application

How?

    • Make sure your virtual environment is activated.
    • Run the file:
      bash
      python app.py

      or if your system requires:
      bash
      python3 app.py

    • You should see output like:
        • Restarting with stat
        • Debugger is active!
        • Debugger PIN: 123-456-789
    • Open your web browser and visit http://127.0.0.1:5000/.
    • You should see the text: Hello, Flask!

Step 6: Common Errors & How to Fix Them

1. ModuleNotFoundError: No module named ‘flask’

    • Cause: Flask is not installed in your current environment.
    • Fix:
        • Ensure virtual environment is activated ((venv) prefix).
        • Run pip install Flask.
        • Verify installation with pip list and look for Flask.

2. ‘python’ is not recognized as an internal or external command

    • Cause: Python is not added to your PATH environment variable.
    • Fix:
        • Reinstall Python and check “Add Python to PATH” option.
        • Alternatively, use full Python path or edit the Path variable manually.

3. Port 5000 already in use

    • Sometimes another app is using Flask’s default port.
    • Fix:
        • Run Flask on a different port, e.g.:
          bash
          python app.py –port=5001

      Or edit app.run():
      python
      app.run(debug=True, port=5001)

4. IndentationError or SyntaxError

    • Python is sensitive to indentation.
    • Make sure your code is properly indented (4 spaces per indentation level).
    • Avoid mixing tabs and spaces.

Step 7: Next Steps

    • Start building more routes and templates.
    • Learn how to:
        • Use HTML templates with Jinja2 (render_template()).
        • Handle form submissions.
        • Connect to a database.
        • Organize your Flask project structure.

Additional Tips

    • Always activate the virtual environment when working on your project.
    • Use pip freeze > requirements.txt to save dependencies.
    • Share your requirements.txt so others can install dependencies with:
      bash
      pip install -r requirements.txt
Updated on July 11, 2025
Was this article helpful?

Related Articles

Leave a Comment