使用@ app.route的语法无效

时间:2017-10-04 23:42:17

标签: python flask

我在第22行获得了无效语法@ app.route(' / start')并且真的不知道为什么......我正在开发它一个Cloud9服务器https://c9.io,也许与它有关...我在两个虚拟环境中使用python版本2.7.3和3.4.3进行了尝试。它与hello.py的语法完全相同,实际上可以正常工作......

#import random
import string
import hangman
import os
from flask import Flask, \
                request, \
                render_template, \
                url_for, \
                redirect, \
                flash


app = Flask(__name__)

@app.route('/')
@app.route('/index')
def initialize():
    WORDLIST_FILENAME = "./resources/words.txt"
    wordlist = hangman.loadWords(WORDLIST_FILENAME)
    return redirect(url_for('start_game', wordlist=wordlist)

@app.route('/start')
def start_game(wordlist):
    secretWord = hangman.chooseWord(wordlist).lower()
    hangman.hang(secretWord)
    return None

if __name__ == '__main__':
#app.debug = True
app.secret_key = 'MySecretKey'
app.run(host=os.getenv('IP', '0.0.0.0'), port=int(os.getenv('PORT',5000)))

随时在https://github.com/leomagal/hangman

分享这个项目

1 个答案:

答案 0 :(得分:1)

缺少右括号:

return redirect(url_for('start_game', wordlist=wordlist)

如果您收到语法错误,如果问题在错误报告的行中不明显,请查看前面的行以查找缺少括号的问题。