W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
為了測(cè)試 Flask 安裝,請(qǐng)?jiān)诰庉嬈髦袑⒁韵麓a輸入 Hello.py:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World'
if __name__ == '__main__':
app.run()
必須在項(xiàng)目中導(dǎo)入Flask模塊。
Flask類的一個(gè)對(duì)象是我們的WSGI應(yīng)用程序。
Flask構(gòu)造函數(shù)使用當(dāng)前模塊(__name __)的名稱作為參數(shù)。
Flask類的route()函數(shù)是一個(gè)裝飾器,它告訴應(yīng)用程序哪個(gè)URL應(yīng)該調(diào)用相關(guān)的函數(shù)。
app.route(rule, options)
rule 參數(shù)表示與該函數(shù)的URL綁定。
options 是要轉(zhuǎn)發(fā)給基礎(chǔ)Rule對(duì)象的參數(shù)列表。
在上面的示例中,'/ ' URL與hello_world()函數(shù)綁定。
因此,當(dāng)在瀏覽器中打開(kāi)web服務(wù)器的主頁(yè)時(shí),將呈現(xiàn)該函數(shù)的輸出。
最后,F(xiàn)lask類的run()方法在本地開(kāi)發(fā)服務(wù)器上運(yùn)行應(yīng)用程序。
app.run(host, port, debug, options)
所有參數(shù)都是可選的
序號(hào) | 參數(shù)與描述 |
---|---|
1 |
host
要監(jiān)聽(tīng)的主機(jī)名。 默認(rèn)為127.0.0.1(localhost)。設(shè)置為“0.0.0.0”以使服務(wù)器在外部可用 |
2 |
port
默認(rèn)值為5000 |
3 |
debug
默認(rèn)為false。 如果設(shè)置為true,則提供調(diào)試信息 |
4 |
options
要轉(zhuǎn)發(fā)到底層的Werkzeug服務(wù)器。 |
上面給出的Python腳本是從Python shell執(zhí)行的。
python Hello.py
Python shell中的消息通知您:
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
在瀏覽器中打開(kāi)上述URL(localhost:5000)。將顯示“Hello World”消息。
Traceback (most recent call last):
File “C:/learn/python/xuexi/web/demoflask/app.py”, line 27, in
app.run();
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\app.py”, line 938, in run
cli.show_server_banner(self.env, self.debug, self.name, False)
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\flask\cli.py”, line 629, in show_server_banner
click.echo(message)
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click\utils.py”, line 217, in echo
file = _default_text_stdout()
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_compat.py”, line 621, in func
rv = wrapper_func()
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_compat.py”, line 385, in get_text_stdout
rv = _get_windows_console_stream(sys.stdout, encoding, errors)
File “C:\Users\zhang\AppData\Local\Programs\Python\Python36\lib\site-packages\click_winconsole.py”, line 261, in _get_windows_console_stream
func = _stream_factories.get(f.fileno())
io.UnsupportedOperation: fileno
只要不用idle執(zhí)行就不會(huì)出錯(cuò)了,不影響后續(xù)使用。改用cmd下Python執(zhí)行或者pycharm等運(yùn)行都能成功。
通過(guò)調(diào)用run()方法啟動(dòng)Flask應(yīng)用程序。但是,當(dāng)應(yīng)用程序正在開(kāi)發(fā)中時(shí),應(yīng)該為代碼中的每個(gè)更改手動(dòng)重新啟動(dòng)它。為避免這種不便,請(qǐng)啟用調(diào)試支持。
如果代碼更改,服務(wù)器將自行重新加載。它還將提供一個(gè)有用的調(diào)試器來(lái)跟蹤應(yīng)用程序中的錯(cuò)誤。
在運(yùn)行或?qū)⒄{(diào)試參數(shù)傳遞給run()方法之前,通過(guò)將application對(duì)象的debug屬性設(shè)置為True來(lái)啟用Debug模式。
app.debug = True app.run() app.run(debug = True)
最新教程請(qǐng)前往 Flask 中文教程 進(jìn)行學(xué)習(xí)!
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: