大家好,我是長風青雲。
今天是鐵人賽第二天,昨天我說到要說flask_test_1.py 也就是今天的主題 ── URL。
那我們就先來了解一下flask_test_1.py程式碼所代表的意義吧。
先上完整程式碼再逐步說明
from flask import Flask
app = Flask(__name__)
@app.route("/")
def test():
return "Hello World!"
if __name__ == "__main__":
app.run(debug=True)
from flask import Flask
將flask中的Flask import 進來 以供使用app=Flask(__name__)
創建一個Flask的 instance@app.route("/")
告訴你怎樣的url可以call怎樣的functiondef test():
就是一個function的名稱 上方的裝飾器會call他return “Hello World”
將文字呈現於介面( 明天會說return別的,不再是字串 ) if __name__ == "__main__":
如果這個程式碼是主要跑的程式的話才會執行,換言之,如果他是被別人用來 import 的py檔 那他不會進來 app.run(debug=True)
就是執行的意思,debug的意思是如果你更改程式碼並儲存,那他將會重啟,變為你剛才更新後的樣子。
(當然是要你在更改的時候同時執行哈哈哈)
好,現在應該都理解flask_test_1.py的內容了,現在我們來變型吧。
from flask import Flask
app = Flask(__name__)
@app.route("/Flask")
def flask():
return "Hello Flask!"
@app.route("/")
def test():
return "Hello World!"
if __name__ == "__main__":
app.run(debug=True)
這樣當我們去到 127.0.0.1:5000/Flask時將會是以下畫面
還有一種URL,是會依照輸入改變的,代碼如下:
from flask import Flask
app = Flask(__name__)
@app.route("/<name>")
def flask(name):
return "Hello "+name+"!"
@app.route("/")
def test():
return "Hello World!"
if __name__ == "__main__":
app.run(debug=True)
然後到瀏覽器輸入127.0.0.1:5000/ (你的名字)則會出現下方圖片顯示的模樣
再說說其實上方的兩個function是可以合併的!
from flask import Flask
app = Flask(__name__)
@app.route("/")
@app.route("/<name>")
def test(name=None):
if name==None:
return "Hello World!"
return "Hello "+name+"!"
if __name__ == "__main__":
app.run(debug=True)
好了~大家是不是覺得Flask既簡單,又好懂呢?
但只有文字是不是很醜?
明天我們將會進入使用HTML和CSS作為UI而我們的Flask退到幕後變為後端的樣子。
簽到#2
看完了 真的是清楚明瞭呢 !!! 滿好玩的感覺
那 如果我port 要開 8787 是不是也可以 ?! (我是調皮的老人)
好像你前一篇有說要怎麼設定 XD
清楚的原因應該是因為很淺 XD
只要有稍微學過的都會看得懂
我們還不老!只是奔....不能說不能說,說了心痛
永遠19歲,當個永遠的大一新鮮人~
No problem !