麻雀虽小,五脏俱全——python web框架Flask介绍

11,157次阅读
没有评论

共计 1678 个字符,预计需要花费 5 分钟才能阅读完成。

w3cschool 小编
2022-12-22 17:59:51
浏览数 (3752)

对于一个后端的初学者而言,小编觉得其实学习什么语言什么框架对初学者来说应该是一种负担。为什么这么说呢,因为初学者往往不知道什么是请求什么是响应,更不必说 session 和 cookie 了。所以对于后端的初学者而言,先学习一种简单的功能完备的框架可以让初学者对整个 web 应用的开发有个简单而全面的了解。而今天小编要介绍的,是一款轻量级的 python web 开发框架,他就是 Flask。

介绍

Flask 是一个轻量级的 web 应用框架,它拥有高度的可定制性。相较于其他同类型的框架,它的使用更加灵活轻便。而且由于它高度封装了 python 的服务器网关接口,使得它的代码更加简洁易懂,新手也可以很容易进行上手。

应用

python 广受诟病的一点就是其性能并不如 java 等编译型语言,flask 作为一个轻量型的 web 框架在性能优化上面也不如同为 python 框架的 Django 和 Tornado。但是因为它轻量且开发快速,所以用来构建小型的 web 应用程序绰绰有余,利用 flask 来进行原型开发也是一个不错的选择(苦恼于毕业设计的计算机专业学生终于有了更轻松的选择)。

比较

这是 Flask 的一个简单的返回 helloworld 的页面,只有一个 ​app.py​ 文件,直接解释执行这个 python 文件就能使用这个 web 应用。

from flask import Flask

app = Flask(__name__)  # 初始化一 flask 应用


@app.route('/hello') # 这个注解表示如果传入路径是 /hello 的话执行 hello_world 函数
def hello_world():
    return 'Hello World!' # 返回 helloworld,也可以返回一个页面


if __name__ == '__main__':
    app.run()  # 运行这个 flask 应用 

这是 java 的一个简单的返回 helloworld 的页面,不仅代码复杂了许多,而且这些代码只是整个项目中最关键的部分,这个代码还需要 web.xml 的支持,需要部署在 Tomcat 上才能运行,部署之前还需要先进行编译 …

package com.example.demo1;

import java.io.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;

@WebServlet(name = "helloServlet", value = "/hello-servlet")  // 这个注解表示该 servlet 关联到 /hello-servlet 这个路径
public class HelloServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {response.setContentType("text/html");// 设置响应的类型为 html
        PrintWriter out = response.getWriter(); // 使用 printWriter 进行响应流的输出
        out.println("hello world!"); // 在响应流中写入 helloworld
    }
}

java 的 servlet 在使用注解后已经简便了很多,但还是比不上 Flask。

小结

在开发的轻便程度上,python 的 Flask 可谓是一骑绝尘,正因如此它也是很多 python 学习人员的首选 python web 框架。所以 python 后端的初学者(其实 java 后端初学者也可以先从 Flask 入门再转 java 后端)最好先对 Flask 框架进行学习。网上也不乏有优秀的 Flask 课程 ,W3Cschool 也提供了优质的 Flask 手册 ,小伙伴们可以前往进行学习。喜欢视频课的同学也可以选择我们的新课程(点击图片跳转到该课程):

Python Flask 开发 Web 服务

快来学习 Flask 吧!

原文地址: 麻雀虽小,五脏俱全——python web 框架 Flask 介绍

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-09-23发表,共计1678字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)