###前提・実現したいこと
Pythonウェブアプリケーションフレームワーク Flaskを使って、名前を入力するとそれを反映させてたページを表示するwebサイトを作ろうとしています。
以下の記事を参考に進めています。
参考記事
###発生している問題・エラーメッセージ
ターミナルでPythonのファイルを起動する際に以下のようなエラーが起こり、どのように訂正すれば良いかわからず困っています。
$python sample.py File "Fillform/sample.py", line 1 SyntaxError: Non-ASCII character '\xe3' in file Fillform/sample.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
###該当のソースコード
Python
1# Flask などの必要なライブラリをインポートする 2from flask import Flask, render_template, request, redirect, url_for 3import numpy as np 4 5# 自身の名称を app という名前でインスタンス化する 6app = Flask(__name__) 7 8# メッセージをランダムに表示するメソッド 9def picked_up(): 10 messages = [ 11 "こんにちは、あなたの名前を入力してください", 12 "やあ!お名前は何ですか?", 13 "あなたの名前を教えてね" 14 ] 15 # NumPy の random.choice で配列からランダムに取り出し 16 return np.random.choice(messages) 17 18# ここからウェブアプリケーション用のルーティングを記述 19# index にアクセスしたときの処理 20@app.route('/') 21def index(): 22 title = "ようこそ" 23 message = picked_up() 24 # index.html をレンダリングする 25 return render_template('index.html', 26 message=message, title=title) 27 28# /post にアクセスしたときの処理 29@app.route('/post', methods=['GET', 'POST']) 30def post(): 31 title = "こんにちは" 32 if request.method == 'POST': 33 # リクエストフォームから「名前」を取得して 34 name = request.form['name'] 35 # index.html をレンダリングする 36 return render_template('index.html', 37 name=name, title=title) 38 else: 39 # エラーなどでリダイレクトしたい場合はこんな感じで 40 return redirect(url_for('index')) 41 42if __name__ == '__main__': 43 app.debug = True # デバッグモード有効化 44 app.run(host='0.0.0.0') # どこからでもアクセス可能に
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/11/26 01:38