執行 Flask 應用程式

執行 Flask 應用程式

通過這個解釋,我們將學習如何在 Visual Studio Code 中設定 Flask 環境並建立 Flask 的基本應用程式。

建立一個基本的 Flask 應用程式

Flask 是 Python 的一個微型 Web 框架,也是著名的構建 Web 應用程式的框架。它還以建立 REST API 而聞名。

讓我們開始工作吧;在開始之前,你必須確保你的機器上安裝了 Python。如果需要安裝,可以到 Python 官網下載最新版本,然後選擇你的作業系統進行安裝。

執行安裝後,你必須檢查是否已成功將 Python 安裝到你的機器上。你可以轉到命令提示符並鍵入以下命令。

python --version

如果你的 Python 版本正在顯示,那麼我們將使用 Python 庫。我們使用 Visual Studio Code 是因為這是一個輕量級的編輯器,但你可以使用任何編輯器編寫程式碼。

建立新資料夾後,我們將在該目錄中開啟 VS Code 環境。那麼,建立虛擬環境,我們為什麼需要建立虛擬環境呢?

虛擬環境就像你機器上的一個隔離環境;如果你在使用不同版本的庫和依賴項的虛擬環境中使用 Python 指令碼,則所有這些都儲存在你機器上的一個容器化隔離環境中。

它不會干擾其他專案和系統設定,這就是為什麼它在處理嚴肅專案時很有用。現在我們將繼續設定我們的虛擬環境;我們需要按 Ctrl+` 來啟動終端。

完成後,我們可以鍵入以下命令來安裝虛擬環境模組。

pip install virtualenv

安裝成功後,我們需要建立一個虛擬環境並使用 virtualenv envenv 是我們虛擬環境的名稱。當我們建立一個虛擬環境時,我們需要給它命名。

接下來,我們需要啟用環境或者進入環境;現在,我們將編寫以下命令。

\env\Scripts\activate.bat

我們已經進入了我們的虛擬環境;如果你使用的是 Mac OS,請使用以下命令啟用你的虛擬環境。

source env\bin\activate

現在我們可以繼續使用以下命令安裝 Flask。

pip install flask

成功安裝 Flask 後,我們在這個與我們的機器分開的虛擬環境中進行了所有安裝。我們需要建立我們的主應用程式;我們將其稱為 app.py 檔案。

我們將編寫最基本的 Flask 應用程式來演示如何快速獲取 Flask 應用程式並使其能夠執行網頁。

首先需要匯入 Flask,所以第一個 Flask 是小寫的,就是庫,第二個是大寫的,就是 Flask 的類。現在我們需要例項化這個 Flask 類和 app 等於 Flask(__name__) 引用當前應用程式的名稱。

現在我們需要建立一個叫做路由的東西,它只是我們應用程式中特定網頁的 URL 端點。我們將在這條路線@app.route('/') 中新增一個斜線,但你可以在此處新增任何你想要的內容。它可以是頁面名稱或端點名稱。

然後定義一個函式,名稱可以是任何你想要的,但你命名它是描述性的。在這種情況下,這是 index(),表示我們網站的基本 URL;然後,我們將編寫一個返回字串的 return 語句。

最後一件事是通過 Python 直譯器執行應用程式; __name__=='__main__' 變數設定為 Python 檔案的實際名稱。這裡的 if 語句確保伺服器僅在指令碼直接從 Python 直譯器執行時執行。

我們跳到程式碼的最後一行;我們使用 run() 函式在我們的應用程式中執行本地伺服器。

在我們的例子中,我們只是將 debug 設定為 True,所以這是一種瞭解錯誤的方法,但請記住,當你將 Flask 應用程式啟動到生產環境中時,你總是必須設定 debugFalse

from flask import Flask

app=Flask(__name__)
@app.route('/')
def index():
    return "Hi there, this is our basic flask app"


if __name__=='__main__':
    app.run(debug=True)

現在我們可以繼續通過鍵入如下所示的命令來啟動我們的應用程式。當我們點選 Enter 並獲得一個 localhost 地址時,我們需要將其複製並貼上到我們放置 URL 的瀏覽器中。

輸出:

建立一個基本的 Flask 應用程式

Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn