Bird
Raised Fist0
Flaskframework~5 mins

What is Flask

Choose your learning style10 modes available
Introduction

Flask helps you build websites and web apps easily. It gives you tools to handle web requests and show pages.

You want to create a simple website quickly.
You need a small web app to test ideas or learn web development.
You want to build an API to share data with other apps.
You want full control over how your web app works without extra features.
You want to add web features to a Python program.
Syntax
Flask
from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Hello, Flask!'

Flask(__name__) creates your web app.

@app.route('/') tells Flask what URL to listen to.

Examples
This example shows a simple homepage that says welcome.
Flask
from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Welcome to my site!'
This example adds a new page at URL '/about'.
Flask
from flask import Flask
app = Flask(__name__)

@app.route('/about')
def about():
    return 'About us page'
This example shows how to return data in JSON format.
Flask
from flask import Flask, jsonify
app = Flask(__name__)

@app.route('/data')
def data():
    return jsonify({'name': 'Flask', 'type': 'web framework'})
Sample Program

This is a complete Flask app. When you run it, it starts a web server. Visiting http://localhost:5000/ shows 'Hello, Flask!'.

Flask
from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Hello, Flask!'

if __name__ == '__main__':
    app.run(debug=True)
OutputSuccess
Important Notes

Flask is called a 'microframework' because it keeps things simple and small.

You can add extra features with extensions if needed.

Use debug=True only while developing, not in production.

Summary

Flask helps you build web apps with Python easily.

It listens to web addresses and sends back responses.

Flask is simple but can grow with your needs.

Practice

(1/5)
1. What is Flask primarily used for?
easy
A. Creating desktop applications
B. Building web applications with Python
C. Managing databases directly
D. Designing mobile apps

Solution

  1. Step 1: Understand Flask's purpose

    Flask is a tool that helps developers create web applications using Python.
  2. Step 2: Compare options with Flask's role

    Options A, C, and D describe other types of software development, not Flask's main use.
  3. Final Answer:

    Building web applications with Python -> Option B
  4. Quick Check:

    Flask = Web apps with Python [OK]
Hint: Flask = Python + web apps, not desktop or mobile [OK]
Common Mistakes:
  • Thinking Flask is for desktop apps
  • Confusing Flask with database tools
  • Assuming Flask builds mobile apps
2. Which of the following is the correct way to start a basic Flask app?
easy
A. from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello, Flask!'
B. import flask app = flask() @app.route('/') def home(): print('Hello, Flask!')
C. from flask import app app = Flask() @app.route('/') def home(): return 'Hello, Flask!'
D. import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello, Flask!'

Solution

  1. Step 1: Check import and app creation

    from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello, Flask!' correctly imports Flask and creates an app with Flask(__name__). Others have wrong imports or app creation.
  2. Step 2: Verify route and return statement

    from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello, Flask!' uses @app.route('/') and returns a string, which is correct Flask syntax.
  3. Final Answer:

    Correct Flask app start code -> Option A
  4. Quick Check:

    Correct import and route = from flask import Flask app = Flask(__name__) @app.route('/') def home(): return 'Hello, Flask!' [OK]
Hint: Import Flask and create app with Flask(__name__) [OK]
Common Mistakes:
  • Using wrong import statements
  • Calling flask() instead of Flask()
  • Printing instead of returning response
3. What will this Flask route return when accessed?
from flask import Flask
app = Flask(__name__)

@app.route('/greet')
def greet():
    return 'Welcome to Flask!'
medium
A. Nothing, the route is not defined
B. A syntax error because of missing parentheses
C. A server error due to missing return statement
D. A web page showing 'Welcome to Flask!'

Solution

  1. Step 1: Analyze the route definition

    The route '/greet' is defined with a function that returns the string 'Welcome to Flask!'.
  2. Step 2: Understand Flask response behavior

    Flask sends the returned string as the response body, so visiting '/greet' shows that message.
  3. Final Answer:

    A web page showing 'Welcome to Flask!' -> Option D
  4. Quick Check:

    Route returns string response = A web page showing 'Welcome to Flask!' [OK]
Hint: Returned string is sent as web page content [OK]
Common Mistakes:
  • Thinking return must be HTML tags
  • Assuming missing parentheses cause error
  • Believing route is undefined
4. Identify the error in this Flask app code:
from flask import Flask
app = Flask(__name__)

@app.route('/hello')
def hello():
    print('Hello World')
medium
A. Wrong app creation syntax
B. Incorrect import of Flask
C. Missing return statement in route function
D. Route decorator syntax error

Solution

  1. Step 1: Check the route function body

    The function prints 'Hello World' but does not return anything, so Flask gets no response to send.
  2. Step 2: Understand Flask route requirements

    Flask route functions must return a response string or object; printing does not send data to the client.
  3. Final Answer:

    Missing return statement in route function -> Option C
  4. Quick Check:

    Route must return response, not just print [OK]
Hint: Route functions must return, not print, response [OK]
Common Mistakes:
  • Using print instead of return
  • Assuming print sends response
  • Ignoring missing return causes error
5. You want to create a Flask app that responds differently based on the URL path. Which feature helps you do this?
hard
A. Using multiple @app.route decorators with different paths
B. Using print statements inside one route
C. Creating multiple Flask app instances
D. Changing the Flask import statement

Solution

  1. Step 1: Understand Flask routing

    Flask uses @app.route decorators to map different URL paths to different functions.
  2. Step 2: Evaluate options for handling multiple paths

    Using multiple @app.route decorators with different paths allows different responses for each URL.
  3. Final Answer:

    Using multiple @app.route decorators with different paths -> Option A
  4. Quick Check:

    Multiple routes = different URL responses [OK]
Hint: Use multiple @app.route for different URLs [OK]
Common Mistakes:
  • Thinking print changes URL response
  • Creating multiple app instances unnecessarily
  • Modifying import does not affect routing
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard