Flask学习笔记-1

1.安装

  • Linux系统

#pip install flask

  • 安装好后进入Python编辑模式,

>>> import flask

看看是否会报错,如果成功则说明安装成功


2.使用方法说明

  • 初始化,创建Flask实例

from flask import Flask
app = Flask(__name__)

应用实例用于处理浏览器端发送给服务器的请求

  • 路由

路由(route):route() 装饰器用于把一个函数绑定到一个 URL,当用户打开这个url时,对应的函数开始工作,返回页面内容

使用方法;

@app.route('/')
def index():
return '<h1>Hello World!</h1>'


带参数的url,如下,当输入url时,输入不同名字,页面就会返回不同的结果,其动态参数默认是string类型,当然也支持int, float和带/的路径(作为一个整体的string),这些类型需要单独的指定,如:/user/<int:id>

@app.route('/user/<name>')
def user(name):
return '<h1>Hello, %s!</h1>' % name

  • 视图

上面的index()函数就是视图函数,

  • 启动服务器

if __name__ == '__main__':
app.run(debug=True)

Flask类的run方法可以启动服务器,run()有几个参数可选,具体如下:

1)debug:调试模式

如果你启用了调试支持,服务器会在代码修改后自动重新载入,并在发生错误时提供一个相当有用的调试器。

有两种途径来启用调试模式。一种是直接在应用对象上设置:

app.debug = True
app.run()

另一种是作为 run 方法的一个参数传入:

app.run(debug=True)

两种方法的效果完全相同。

2)host:指定url前缀,默认是localhost

可设置如:host='hostname'

如果不设置host和端口,跑程序$ python hello.py后,可以直接打开本地http://127.0.0.1:5000/

3)port:端口,默认是5000

可设置如:port=1234,注意端口冲突

使用:app.run(host=host,port=port,debug=True)

  • 渲染模板

将HTML内容提取出来,放到templates文件夹下,

使用 render_template() 方法可以渲染模板,你只要提供模板名称和需要作为参数传递给模板的变量就行了。下面是一个简单的模板渲染例子:

from flask import render_template

@app.route('/hello/')
@app.route('/hello/<name>')
def hello(name=None):
    return render_template('hello.html', name=name)
  • 模板的使用方法

1)模板中变量用两个{{ }},如:{{variableName}};逻辑控制和循环用{%   %},如下:

{% if title%}
    <title>{{title}}-microblog</title>
    {%else%}
    <title>Welcome to microblog</title>
 {% endif %}

{% for comment in comments %}
<li>{{ comment }}</li>
{% endfor %}


2)使用继承

{% block 要继承的块名 %}{% endblock %},在父模板中定义好格式,子模板填充其内容

如下:

base.html:
<html>
<head>
{% block head %}
<title>{% block title %}{% endblock %} - My Application</title>
{% endblock %}
</head>
<body>
{% block body %}
{% endblock %}
</body>
</html>


子模板:

{% extends "base.html" %}
{% block title %}Index{% endblock %}
{% block head %}
{{ super() }}
<style>
</style>
{% endblock %}
{% block body %}
<h1>Hello, World!</h1>
{% endblock %}








STM32是一款非常流行的嵌入式微控制器系列,它具有强大的性能和丰富的外设资源。在学习STM32时,掌握如何进行Flash读写是非常重要的。 Flash是一种非易失性存储器,可以用来存储程序代码和数据。在STM32中,Flash存储器通常用来存储应用程序代码。下面是一个简单的Flash读写程序的示例: 1.首先,我们需要包含适用于所使用的STM32型号的头文件。例如,对于STM32F4系列,我们需要包含"stm32f4xx.h"。 2.然后,我们需要定义一个指向Flash存储器的指针变量。例如,可以使用如下代码:`uint32_t* flash_address = (uint32_t*)0x08000000;`其中0x08000000是Flash存储器的起始地址。 3.要读取Flash存储器中的数据,我们可以通过以下代码实现:`data = *flash_address;`其中data是一个变量,用于存储读取到的数据。 4.要写入数据到Flash存储器中,我们可以通过以下代码实现:`*flash_address = data;`其中data是要写入的数据。 需要注意的是,STM32的Flash存储器是有写保护机制的,因此在写入数据之前,我们需要禁用写保护。可以使用以下代码禁用写保护:`FLASH->KEYR = 0x45670123; FLASH->KEYR = 0xCDEF89AB;`然后才能进行数据写入。 另外,为了确保数据的完整性,我们可以使用CRC校验来验证Flash存储器中的程序代码的正确性。可以使用库函数来计算校验和,然后将其与预期的校验和进行比较以进行验证。 综上所述,掌握STM32的Flash读写操作对于嵌入式系统的开发非常重要。上述示例代码可以帮助我们快速进行Flash读写操作,同时注意写保护和数据校验可以提高数据的安全性和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值