Bird
Raised Fist0
Flaskframework~10 mins

Flask session object - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to import the session object from Flask.

Flask
from flask import [1]
Drag options to blanks, or click blank then click option'
Arender_template
Bredirect
Crequest
Dsession
Attempts:
3 left
💡 Hint
Common Mistakes
Importing request instead of session
Using render_template instead of session
Forgetting to import session
2fill in blank
medium

Complete the code to set a value in the Flask session.

Flask
session[[1]] = 'user123'
Drag options to blanks, or click blank then click option'
Ausername
B'username'
C'user_id'
Duser
Attempts:
3 left
💡 Hint
Common Mistakes
Using variable names without quotes as keys
Using keys like user without quotes
Forgetting quotes causes errors
3fill in blank
hard

Fix the error in the code to retrieve a session value safely.

Flask
user = session.get([1], None)
Drag options to blanks, or click blank then click option'
Ausername
B'user'
C'username'
Duser
Attempts:
3 left
💡 Hint
Common Mistakes
Using unquoted keys causing KeyError
Using wrong key names
Not providing a default value
4fill in blank
hard

Fill both blanks to check if a user is logged in using the session.

Flask
if [1] in session and session[[2]] == 'admin':
    print('Admin user')
Drag options to blanks, or click blank then click option'
A'username'
B'user'
C'admin'
D'role'
Attempts:
3 left
💡 Hint
Common Mistakes
Using different keys in the condition
Forgetting quotes around keys
Checking wrong keys like 'username'
5fill in blank
hard

Fill all three blanks to clear the session and redirect to home page.

Flask
session.[1]()
return [2](url_for([3]))
Drag options to blanks, or click blank then click option'
Aclear
Bredirect
C'home'
Durl_for
Attempts:
3 left
💡 Hint
Common Mistakes
Using session.pop instead of clear for all keys
Forgetting to import redirect or url_for
Passing url_for as string instead of calling it

Practice

(1/5)
1. What is the main purpose of the Flask session object?
easy
A. To store user-specific data temporarily between requests
B. To connect to a database
C. To handle file uploads
D. To render HTML templates

Solution

  1. Step 1: Understand the role of session in Flask

    The session object is designed to keep data for a user during their visit, like a temporary storage.
  2. Step 2: Compare with other options

    Connecting to databases, handling uploads, and rendering templates are done by other Flask features, not session.
  3. Final Answer:

    To store user-specific data temporarily between requests -> Option A
  4. Quick Check:

    Session stores user data temporarily [OK]
Hint: Session stores data per user visit like a temporary box [OK]
Common Mistakes:
  • Thinking session connects to databases
  • Confusing session with template rendering
  • Assuming session handles file uploads
2. Which of the following is the correct way to import and use the Flask session object?
easy
A. import flask.session flask.session['user'] = 'Alice'
B. from flask_session import Session Session['user'] = 'Alice'
C. from flask import session session['user'] = 'Alice'
D. import session session['user'] = 'Alice'

Solution

  1. Step 1: Check the correct import statement

    The Flask session object is imported directly from flask using from flask import session.
  2. Step 2: Verify usage syntax

    After import, you can use it like a dictionary: session['user'] = 'Alice'.
  3. Final Answer:

    from flask import session\nsession['user'] = 'Alice' -> Option C
  4. Quick Check:

    Import session from flask and assign like dict [OK]
Hint: Import session directly from flask, then use like a dict [OK]
Common Mistakes:
  • Trying to import session from flask_session package
  • Using wrong import syntax like import session
  • Accessing session as flask.session instead of from flask import session
3. What will be the output of this Flask route code snippet?
from flask import Flask, session
app = Flask(__name__)
app.secret_key = 'secret'

@app.route('/')
def index():
    session['count'] = session.get('count', 0) + 1
    return f"Count: {session['count']}"
medium
A. Count: 1
B. Error: session not defined
C. Count: 2
D. Count: 0

Solution

  1. Step 1: Understand session initialization and increment

    The code gets 'count' from session or 0 if not set, then adds 1 and stores it back.
  2. Step 2: Determine output on first request

    On first visit, 'count' is not in session, so session.get('count', 0) returns 0, then incremented to 1.
  3. Final Answer:

    Count: 1 -> Option A
  4. Quick Check:

    First visit count starts at 1 [OK]
Hint: First session count starts at 1 after increment [OK]
Common Mistakes:
  • Assuming count starts at 0 output
  • Expecting count to be 2 on first visit
  • Forgetting to set secret_key causing errors
4. Identify the error in this Flask code using session:
from flask import Flask, session
app = Flask(__name__)

@app.route('/')
def index():
    session['user'] = 'Bob'
    return f"User: {session['user']}"
medium
A. Missing import of session
B. Missing app.secret_key causing session error
C. Incorrect session syntax
D. Route decorator syntax error

Solution

  1. Step 1: Check for secret_key setting

    Flask sessions require app.secret_key to encrypt session data securely.
  2. Step 2: Identify missing secret_key

    The code does not set app.secret_key, so session will raise an error or not work properly.
  3. Final Answer:

    Missing app.secret_key causing session error -> Option B
  4. Quick Check:

    Secret key missing breaks session [OK]
Hint: Always set app.secret_key before using session [OK]
Common Mistakes:
  • Forgetting to set secret_key
  • Assuming session works without secret_key
  • Misreading import or decorator syntax
5. You want to store a user's preferred language in the Flask session and ensure it persists across requests. Which code snippet correctly sets and retrieves this value safely?
hard
A. session['lang'] = 'en' lang = session['language']
B. session['lang'] = 'en' lang = session['lang']
C. session.set('lang', 'en') lang = session.get('lang')
D. session['lang'] = 'en' lang = session.get('lang', 'default')

Solution

  1. Step 1: Set session value correctly

    Assigning with session['lang'] = 'en' is correct to store the language.
  2. Step 2: Retrieve session value safely

    Using session.get('lang', 'default') safely gets the value or returns 'default' if missing, avoiding errors.
  3. Final Answer:

    session['lang'] = 'en'\nlang = session.get('lang', 'default') -> Option D
  4. Quick Check:

    Use session.get() to avoid KeyError [OK]
Hint: Use session.get() to safely read session keys [OK]
Common Mistakes:
  • Using session.set() which does not exist
  • Accessing wrong key causing KeyError
  • Not providing default value when reading session
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