Flask:一个轻量级Web框架精灵的Python库!

文摘   2024-11-06 10:47   河南  

Flask:一个轻量级Web框架精灵的Python库!

说起Python Web开发,你肯定听过Django这个大块头。不过今天咱聊聊另一个有趣的小精灵 - Flask。它就像是一个迷你版的瑞士军刀,小巧玲珑但功能齐全。这个框架最吸引人的地方就是它的简单和灵活性,你想往里加啥功能都行,完全由你说了算。


装Flask贼简单,打开终端敲一行命令就搞定:   


pip install flask

装完就能用了,就是这么爽快!


Flask写个网页真的超级简单,看看这段代码:   


from flask import Flask

app = Flask(__name__)

@app.route('/')

def hello():

return 'Hey,老铁!这是我用Flask搭的第一个网站!'

if __name__ == '__main__':

app.run()

运行这段代码,打开浏览器输入就能看到结果啦。:>


温馨提示:别忘了把代码保存成 .py 文件再运行哦,直接在解释器里敲可不行。


路由就是告诉Flask:访问不同的网址该显示啥内容。咱们来整几个好玩的:   


@app.route('/user/<name>')

def user(name):

return f'嘿!{name},欢迎来到我的网站!'

@app.route('/square/<int:number>')

def square(number):

return f'{number}的平方是{number * number}'

看到这个 <name><int:number> 没?这就是 动态路由 ,可以接收用户输入的值。


光返回字符串多没意思,Flask可以返回整个HTML页面:   


from flask import render_template

@app.route('/page')

def show_page():

my_list = ['Python', 'Flask', 'Web开发']

return render_template('page.html', title='我的页面', items=my_list)

对应的HTML模板(page.html):复制


<!DOCTYPE html>

<html>

<head>

<title>{{ title }}</title>

</head>

<body>

<ul>

{% for item in items %}

<li>{{ item }}</li>

{% endfor %}

</ul>

</body>

</html>

刷新新标签页


分享温馨提示:模板文件要放在templates文件夹下,不然Flask找不着。


来点实用的,写个小表单:   


from flask import request

@app.route('/submit', methods=['GET', 'POST'])

def submit():

if request.method == 'POST':

user_name = request.form.get('name')

return f'表单提交成功!你好,{user_name}!'

return '''

<form method=“post”>

<input type=“text” name=“name”>

<input type=“submit” value=“提交”>

</form>

'''

这段代码能处理GET和POST请求,还能获取表单数据,酷不酷?


Flask本身不带数据库,但可以配合SQLAlchemy来用:   


from flask_sqlalchemy import SQLAlchemy

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'

db = SQLAlchemy(app)

class User(db.Model):

id = db.Column(db.Integer, primary_key=True)

name = db.Column(db.String(80), nullable=False)

搞定!这就创建了个简单的用户表。


说了这么多,Flask真的是个挺有意思的框架。它不像Django那样大而全,但正因为这样,反而更容易上手,更适合小项目。写代码的时候,你会发现它特别顺手,就像跟多年的老朋友聊天一样自然。


不过记住啊,代码一定要规范,该加注释的地方得加注释,该处理异常的地方别偷懒。这样写出来的项目才经得起时间的考验!


翔宇风
精彩纷呈,引人入胜。
 最新文章