Python基础之Flask快速入门2

简介: Python基础之Flask快速入门2

通过上一篇文章的快速入门,实现了Python利用Flask框架搭建web项目的基本内容,本文将进一步介绍如何通过jQuery实现Flask项目的异步刷新,以达到局部更新的目的,仅供学习分享使用,如有不足之处,还请指正。

什么是Ajax?

Ajax是Asynchronous JavaScript and Xml的简称,通过Ajax向服务器发送请求,接收服务器返回的json数据,然后使用javascript修改页面来实现页面数据的局部刷新。AJAX 是与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的更新。使用jQuery框架可方便的编写ajax代码,需要jQuery.js文件。

jQuery下载

jQuery可以通过官网进行下载,在开发过程中,为便于调试,可下载开发版。如下所示:

创建模板

在下载完jQuery后,将其拷贝到static/js目录下,然后创建模板文件ajax.html,如下所示:

ajax.html文件中调用jQuery创建ajax,然后更新页面,如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>异步刷新页面</title>
    <script src="../static/js/jquery-3.6.0.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("#btn_ajax").click(function () {
                $.ajax({
                    url: "/ajax_data",
                    type: "post",
                    data: {"name": "李四", "score": 99},
                    success: function (data) {
                        $("h1").html("中国加油>>" + data);
                    },
                    error: function (data) {
                        alert("发送ajax失败!");
                    }
                })
            });
        });
    </script>
</head>
<body>
<h1>局部刷新</h1>
<input id="btn_ajax" type="button" value="点我有惊喜"/>
</body>
</html>

创建路由

其中ajax_data为指定路由,主要用于获取数据,如下所示:

注意:一般默认情况下,flask路由只支持get方式,为支持post方式,需要显示声明。

启动服务

启动flask服务,在浏览器中进行访问,初始化加载时如下所示:

点击按钮后,通过ajax调用后端服务,成功后,刷新页面,实现局部刷新功能,如下所示:

以上就是Python利用flask及jQuery实现异步刷新的方法,旨在抛砖引玉,分析分享。

字符串格式化

字符串的格式化方法分为两种,分别为占位符(%)和format方式。占位符方式在Python2.x中用的比较广泛,随着Python3.x的使用越来越广,format方式使用的更加广泛。

占位符(%)方式

name = '小王'
age = 20
score = 100
country = '中国'
print("我的名字叫%s我的年龄是%d我的分数是%d我的祖国是%s" % (name, age, score, country))

占位符还可以通过字典的方式进行匹配,如下所示:

print("我的名字叫%(name)s我的年龄是%(age)d我的分数是%(score)d我的祖国是%(country)s" % (
    {"name": name, "age": age, "score": score, "country": country}))

输出结果如下所示:

format方式

name = '小王'
age = 20
score = 100
country = '中国'
print("我的名字叫{}我的年龄是{}我的分数是{}我的祖国是{}".format(name, age, score, country))  # 默认1对1,多1不可,缺1不可
print("我的名字叫{0}我的年龄是{1}我的分数是{2}我的祖国是{3}".format(name, age, score, country))  # 通过位置找出替换目标及插入的参数
print("我的名字叫{name}我的年龄是{age}我的分数是{score}我的祖国是{country}".format(name=name, age=age, score=score,
                                                               country=country))  # {}通过关键字找出替换目标及插入的参数

以上几种format方式,输出结果一致,如下所示:

插值法

在Python 3.6以后,还提供了插值法,实现格式化,如下所示:

name = '小王'
age = 20
score = 100
country = '中国'
print(f"我的名字叫{name}我的年龄是{age}我的分数是{score}我的祖国是{country}")

输出结果也是一样的,如下所示:

备注

长相思·其一

【作者】李白 【朝代】唐

长相思,在长安。

络纬秋啼金井阑,微霜凄凄簟色寒。孤灯不明思欲绝,卷帷望月空长叹。美人如花隔云端!

上有青冥之长天,下有渌水之波澜。天长路远魂飞苦,梦魂不到关山难。

长相思,摧心肝!

相关文章
|
5天前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
29 1
|
4天前
|
存储 缓存 监控
利用Python和Flask构建RESTful API的实战指南
在当今的软件开发中,RESTful API已成为前后端分离架构中的核心组件。本文将带你走进实战,通过Python的Flask框架,一步步构建出高效、安全的RESTful API。我们将从项目初始化、路由设置、数据验证、错误处理到API文档生成,全方位地探讨如何构建RESTful API,并给出一些实用的最佳实践和优化建议。
|
5天前
|
开发框架 网络协议 前端开发
Python高性能web框架--Fastapi快速入门
Python高性能web框架--Fastapi快速入门
|
5天前
|
机器学习/深度学习 人工智能 算法
|
5天前
|
SQL 中间件 API
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】**Flask是Python的轻量级Web框架,以其简洁API和强大扩展性受欢迎。本文深入探讨了面试中关于Flask的常见问题,包括路由、Jinja2模板、数据库操作、中间件和错误处理。同时,提到了易错点,如路由冲突、模板安全、SQL注入,以及请求上下文管理。通过实例代码展示了如何创建和管理数据库、使用表单以及处理请求。掌握这些知识将有助于在面试中展现Flask技能。**
19 1
Flask框架在Python面试中的应用与实战
|
5天前
|
存储 JSON 数据安全/隐私保护
Flask Python:如何获取不同请求方式的参数
Flask Python:如何获取不同请求方式的参数
|
5天前
|
数据安全/隐私保护 Python
Python Flask-Mail实现邮件发送
Python Flask-Mail实现邮件发送
|
5天前
|
监控 数据可视化 NoSQL
Python基于Flask的高校舆情分析,舆情监控可视化系统
Python基于Flask的高校舆情分析,舆情监控可视化系统
|
5天前
|
数据安全/隐私保护 Python
【Python】Python Flask token身份认证(附完整代码)
【Python】Python Flask token身份认证(附完整代码)
|
5天前
|
前端开发 安全 JavaScript
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面
Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面