偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Python微型Web框架Flask快速入門

開發(fā) 后端
微型意味著Flask本身只提供了簡單的核心的功能,但它具備了強(qiáng)大的可擴(kuò)展性。比如,它不會(huì)強(qiáng)制你使用某個(gè)ORM框架,而是把選擇權(quán)交給你,讓你自己決定集成哪個(gè)擴(kuò)展。

[[413649]]

本文轉(zhuǎn)載自微信公眾號(hào)「dongfanger」,作者dongfanger。轉(zhuǎn)載本文請(qǐng)聯(lián)系dongfanger公眾號(hào)。

Flask是什么

如果說Django是一個(gè)開箱即用的自帶完善功能的Web框架,那么Flask就是一個(gè)只提供基礎(chǔ)結(jié)構(gòu)的微型框架。這一點(diǎn)從它的GitHub源碼就能看出端倪:

它的核心代碼就只有這么多。微型意味著Flask本身只提供了簡單的核心的功能,但它具備了強(qiáng)大的可擴(kuò)展性。比如,它不會(huì)強(qiáng)制你使用某個(gè)ORM框架,而是把選擇權(quán)交給你,讓你自己決定集成哪個(gè)擴(kuò)展。

無論如何,都應(yīng)該學(xué)習(xí)一下Flask,因?yàn)樗屇銖牧汩_始,了解一個(gè)Web框架是如何誕生的:

安裝Flask

Flask需要Python3.6及以上才能使用,最新的async異步支持需要Python3.7及以上。

安裝Flask前可以先創(chuàng)建一個(gè)虛擬環(huán)境,這樣相關(guān)的包都放在這個(gè)虛擬環(huán)境中。

Mac用戶:

  1. # 創(chuàng)建 
  2. $ mkdir myproject 
  3. $ cd myproject 
  4. $ python3 -m venv venv 
  5. # 激活 
  6. $ . venv/bin/activate 

Windows用戶:

  1. # 創(chuàng)建 
  2. > mkdir myproject 
  3. > cd myproject 
  4. > py -3 -m venv venv 
  5. # 激活 
  6. > venv\Scripts\activate 

然后就通過pip安裝Flask即可:

  1. $ pip install Flask 

Hello World

Flask是一個(gè)Web框架,更準(zhǔn)備的說是一個(gè)提供接口的后端服務(wù),只需要5行代碼就能實(shí)現(xiàn)一個(gè)接口:

  1. from flask import Flask 
  2.  
  3. app = Flask(__name__) 
  4.  
  5. @app.route("/"
  6. def hello_world(): 
  7.     return "<p>Hello, World!</p>" 

 

截止到目前,還沒見過哪個(gè)Web框架是這么玩的,有點(diǎn)顛覆對(duì)Web框架的認(rèn)知,印象中的Web框架都是有點(diǎn)龐大的,F(xiàn)lask卻很輕巧的就實(shí)現(xiàn)了。

運(yùn)行后會(huì)在控制臺(tái)輸出:

  1. set FLASK_APP=hello 
  2. > flask run 
  3.  * Running on http://127.0.0.1:5000/ 

瀏覽器訪問http://127.0.0.1:5000/就會(huì)看到Hello, World!字樣。

代碼解析

這幾行代碼會(huì)做這4件事:

  1. from flask import Flask,F(xiàn)lask類的實(shí)例就是一個(gè)WSGI應(yīng)用,這樣才能跑起來。
  2. app = Flask(__name__),參數(shù)__name__是模塊或包名,這樣Flask才能去查找Web相關(guān)文件。
  3. @app.route("/"),定義了接口的URL,也就是路由配置,默認(rèn)是GET方法。
  4. hello_world()函數(shù)是具體的接口處理邏輯代碼,返回了一個(gè)HTML字符串。

小結(jié)

本文簡單介紹了Flask是什么,怎么安裝Flask,演示了Hello World的代碼實(shí)現(xiàn)Demo,并對(duì)代碼進(jìn)行了解析。為什么一定要學(xué)Flask呢?我最近看了一篇Django vs Flask的最新的比較文章,原文是國外某個(gè)博客發(fā)的,里面說道,如果你想在當(dāng)前快速實(shí)現(xiàn)某個(gè)需求,那么可以選擇使用Django。但是請(qǐng)你有時(shí)間務(wù)必回過頭來學(xué)一下Flask,因?yàn)檫@樣才能知道用Python做Web開發(fā)的所有細(xì)節(jié)。

參考資料:

https://flask.palletsprojects.com/en/2.0.x/

https://flask.palletsprojects.com/en/2.0.x/foreword/

https://flask.palletsprojects.com/en/2.0.x/installation/

 

https://flask.palletsprojects.com/en/2.0.x/quickstart/

 

責(zé)任編輯:武曉燕 來源: dongfanger
相關(guān)推薦

2023-06-27 08:34:32

2017-09-11 10:55:22

PythonWeb框架

2023-10-09 18:17:52

Python語言Web

2023-06-13 13:38:00

FlaskPython

2011-11-08 10:36:42

Java

2020-06-03 09:37:42

人臉識(shí)別人工智能開源

2024-09-29 16:36:16

2025-07-01 08:15:00

FlaskDjangoPython

2025-01-13 12:23:51

2024-08-27 09:09:49

Web系統(tǒng)JSP

2020-11-23 10:48:39

Golang GinW

2023-04-28 08:28:14

FlaskDjangoPython

2009-06-18 09:29:44

Spring Web

2019-04-29 10:12:35

WebFlaskDjango

2020-09-04 15:38:19

Web前端開發(fā)項(xiàng)目

2019-12-23 10:00:52

PythonFlaskPython Web

2009-05-12 09:54:09

JavaRestCoC

2017-07-18 15:13:17

2022-06-30 08:13:44

PythonWeb編程語言

2025-06-03 09:00:00

Flask開發(fā)Python
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)