簡體   English   中英

我是否缺少縮進或其他問題?

[英]Am I missing indentation or is something else wrong with this?

from flask import Flask, render_template, request, redirect, session
import random
app = Flask(__name__)
app.secret_key = "guess_secret"

@app.route('/') 
def landing_page():
    if 'num' not in session:
        session['num'] = random.randrange(0,101)
    if 'message' not in session:
        session['message'] = ''
    if 'color' not in session:
        session['color'] = ''
    return render_template('indexa.html', msg = session['message'], color = session['color'])

@app.route('/execute', methods=['POST'])
def check_guess():
    session(['guess']) = int(request.form['guess'])
if (session['guess']==session['num']):
    session['message'] = str(session['num'])+'was the number!'
    session['color']='green'
elif int(request.form['guess']) < session['num']:
    session['message'] = 'Too low.'
    session['color']='red'
else: 
    session['message'] = 'Too high.'
    session['color']='red'
    return redirect('/')

@app.route('/reset', methods=['POST'])
def reset():
    session.pop('number') 
    session.pop('guess')
    session.pop('color')
    return redirect('/')

app.run(debug=True)

我正在嘗試創建一個猜謎游戲燒瓶頁面。 不斷返回“文件“guess.py”,第 27 行 session['color']='red' ^ IndentationError: unindent 不匹配任何外部縮進級別

盡管代碼在語法上似乎是正確的,但它看起來好像這部分:

@app.route('/execute', methods=['POST'])
def check_guess():
    session(['guess']) = int(request.form['guess'])
if (session['guess']==session['num']):
    session['message'] = str(session['num'])+'was the number!'
    session['color']='green'
elif int(request.form['guess']) < session['num']:
    session['message'] = 'Too low.'
    session['color']='red'
else: 
    session['message'] = 'Too high.'
    session['color']='red'
    return redirect('/')

可能是這樣的:

@app.route('/execute', methods=['POST'])
def check_guess():
    session(['guess']) = int(request.form['guess'])
    if (session['guess']==session['num']):
        session['message'] = str(session['num'])+'was the number!'
        session['color']='green'
    elif int(request.form['guess']) < session['num']:
        session['message'] = 'Too low.'
        session['color']='red'
    else: 
        session['message'] = 'Too high.'
        session['color']='red'
    return redirect('/')

還要確保不要混用制表符和空格。 如果您使用空格縮進,請確保代碼中根本沒有制表符。

你的代碼沒有正確縮進試試下面的代碼

from flask import Flask, render_template, request, redirect, session
import random
app = Flask(__name__)
app.secret_key = "guess_secret"

@app.route('/') 
def landing_page():
    if 'num' not in session:
        session['num'] = random.randrange(0,101)
    if 'message' not in session:
        session['message'] = ''
    if 'color' not in session:
        session['color'] = ''
    return render_template('indexa.html', msg = session['message'], color = session['color'])

@app.route('/execute', methods=['POST'])
def check_guess():
    session(['guess']) = int(request.form['guess'])
if (session['guess']==session['num']):
    session['message'] = str(session['num'])+'was the number!'
    session['color']='green'
elif int(request.form['guess']) < session['num']:
    session['message'] = 'Too low.'
    session['color']='red'
else: 
    session['message'] = 'Too high.'
    session['color']='red'
    return redirect('/')

@app.route('/reset', methods=['POST'])
def reset():
    session.pop('number') 
    session.pop('guess')
    session.pop('color')
    return redirect('/')

app.run(debug=True)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM