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.