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 应用程序并创建既实用又有趣的东西是如此简单。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP