Flask 專案 – 使用 PyJokes 建立一個笑話應用


如果您是需要構建 Web 應用程式的 Python 開發人員,Flask 是一個絕佳的選擇。它是一個輕量級的 Web 框架,易於使用和理解。本文將向您展示如何使用 Flask 和 PyJokes(一個包含大量笑話的 Python 包)來建立一個有趣且互動式笑話應用。

安裝和語法

要開始使用我們的 Flask 新聞應用程式,我們首先需要安裝 **Flask** 和 **pyjokes** 庫,該庫將為我們隨機獲取笑話。

pip install pyjokes flask

在深入探討 Flask 新聞應用程式的實現細節之前,讓我們先了解一下 Flask 的基本語法。Flask 應用程式通常由一系列路由組成,這些路由是對映到 Python 函式的 URL。以下是一個簡單的 Flask 路由示例:

from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
   return 'Hello, World!'

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

演算法

  • 匯入 Flask 和 pyjokes 庫。

  • 建立 Flask 應用程式例項。

  • 為應用程式的根 URL 定義 **路由 '/'**。

  • 定義一個名為 **'index'** 的函式,當請求根 URL 時將呼叫該函式。

  • 從 **pyjokes** 庫呼叫 **'get_joke'** 方法來獲取隨機笑話。

  • 渲染 **'jokes.html'** 模板檔案並將笑話作為上下文變數傳遞。

  • 如果直接執行應用程式,則以除錯模式執行。

  • 在 HTML 檔案中,使用 Flask 變數語法顯示笑話。

  • 在 HTML 檔案中新增一個按鈕,該按鈕將重新載入頁面以獲取新的笑話。

使用 PyJokes

import pyjokes

# Get a single joke
print(pyjokes.get_joke())

# Get a list of jokes
jokes = pyjokes.get_jokes()
for joke in jokes:
   print(joke)

笑話應用程式碼

示例

app.py

from flask import Flask, render_template
import pyjokes

app = Flask(__name__)

@app.route("/")
def index():
   joke = pyjokes.get_joke()
   return render_template("jokes.html", joke=joke)

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

news.html

**注意** - [在與 **“app.py”** 相同的位置建立一個名為 **“templates”** 的資料夾,並在該資料夾記憶體儲此 **jokes.html** 檔案]

<!doctype html>
<html>
<head>
   <title>Joke App</title>
</head>
<body>
   <h1>Joke App</h1>
   <p>{{ joke }}</p>
   <button onclick="window.location.reload()">Get a new joke</button>
</body>
</html>

輸出

Flask 應用程式設定 -

程式碼的第一部分匯入 Flask 和 PyJokes 庫。Flask 建構函式用於建立 Flask 類的例項,並將其儲存在變數 app 中。此 app 變數用於定義 Web 應用程式的路由和檢視。

路由定義 -

路由裝飾器 **@app.route("/")** 用於定義應用程式的根 URL,即主頁。index 函式與該路由相關聯,該函式使用 PyJokes 庫生成隨機笑話。

模板渲染 -

render_template 方法用於渲染 jokes.html 模板檔案,這是一個 **Jinja2** 模板。index 函式中生成的 joke 變數使用 **joke=joke** 語法傳遞到模板。

模板結構 -

jokes.html 模板是一個基本的 HTML 檔案,它使用 Jinja2 語法渲染從 Flask 應用程式傳遞的 joke 變數。頁面的標題設定為“笑話應用”,標題也是“笑話應用”。笑話使用 **{{ joke }}** 語法顯示,它是 joke 變數的佔位符。最後,包含一個“獲取新的笑話”按鈕以 **重新載入** 頁面並生成新的笑話。

模型-檢視-控制器 (MVC) 架構 -

它有助於協調在 **模型** 和 **檢視** 之間傳遞和接收的請求和響應,這些請求和響應由 **控制器** 處理。用於在網頁上顯示笑話的 HTML 模板充當檢視,而生成隨機笑話的 PyJokes 模組充當控制器。

應用

除了娛樂之外,這樣的有趣工具還可以用於其他用途。它還可以用於各種實用目的,例如透過例如每次開啟終端時顯示不同的笑話,為您的命令列介面帶來幽默。它還可以用於建立簡單的聊天機器人,該聊天機器人會在說出某個特定單詞時講笑話。這可以使您的聊天機器人人性化並吸引客戶的興趣。

結論

PyJokes 是一個有趣的 Flask 庫,用於建立易於使用的笑話應用程式,在這裡,我們展示了一個簡單應用程式的開發,該應用程式僅用 20 行程式碼即可直接在瀏覽器中向客戶端請求顯示任意隨機笑話。

輕量級且適應性強的 Flask 框架使建立像這樣的簡單 Web 應用程式變得簡單。在 PyJokes 的幫助下,我們能夠增強應用程式的幽默感和使用者參與度。雖然此應用程式只是一個基本模型,但它表明使用 Python 庫構建現代 Flask 應用程式並建立既實用又有趣的東西是如此簡單。

更新於: 2023年8月21日

108 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告

© . All rights reserved.