Flask入门教程
程序 作者:李辉 简介 3 版本:1.0 发布时间:2019.2.1 © 2018 李辉(Grey Li) / HelloFlask.com 本书采用 CC BY-NC-ND 3.0 协议授权,禁止商用、演绎后分发或无署名转载。 简介 4 前言 Flask 是一个使用 Python 语言编写的 Web 框架,它可以让你高效的编写 Web 程 序。Web 程序即“网站”或“网页程 阅读文章《Pipenv:新一代Python项目环境与依赖管理工具》或 Pipenv 官方 文档。 如果你打算开源你的程序,在项目根目录中添加一个 README.md (自述文 件)和 LICENSE (授权声明)是很有必要的。详情可以访问 Open Source Guides 了解。 在安装 Pipenv 时,你也可以使用 --user 选项进行用户安装(即 pip install --user render_template() 函数可以把模板渲染出来,必须传入的参数为模板文 件名(相对于 templates 根目录的文件路径),这里即 'index.html' 。为了让 模板正确渲染,我们还要把模板内部使用的变量通过关键字参数传入这个函数,如 下所示: app.py:返回渲染好的模板作为响应 第 3 章:模板 25 from flask import Flask, render_template0 码力 | 127 页 | 7.62 MB | 1 年前3PyWebIO v1.1.0 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: put_row([ put_column([ put_code('A'), 显示一条通知消息 popup 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样 式 put_row 使用行布局输出内容 put_column 使用列布局输出内容 put_grid 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容跨单元 格 style 自定义输出内容的css样式 其他 output 内容占位符 输出域Scope io_ctrl.Output 使用网格布局输出内容 content – 输出内容. put_xxx() / None 组成的二维数组, None 表示空白. 数组项可以使用 span() 函数设置元素在 网格的跨度. cell_width (str) – 网格元素的宽度. 宽度值格式参考 put_row() 函数的 size 参数. cell_height (str) – 网格元素的高度. 高度值格式参考0 码力 | 119 页 | 7.41 MB | 1 年前3Hello 算法 1.0.0b4 Python版
11111110(反码) = 10000001(补码) + 11111111(补码) = 10000000(补码) = −128 你可能已经发现,上述的所有计算都是加法运算。这暗示着一个重要事实:计算机内部的硬件电路主要是基 于加法运算设计的。这是因为加法运算相对于其他运算(比如乘法、除法和减法)来说,硬件实现起来更简 3. 数据结构 hello‑algo.com 42 单,更容易进行并行化处理,从而提高运算速度。 个字节;如果字符串中有超出 BMP 的字符,那么 每个字符占用 4 个字节。 ‧ Go 语言的 string 类型在内部使用 UTF‑8 编码。Go 语言还提供了 rune 类型,它用于表示单个 Unicode 码点。 ‧ Rust 语言的 str 和 String 类型在内部使用 UTF‑8 编码。Rust 也提供了 char 类型,用于表示单个 Unicode 码点。 需要注意的是,以 public 中,这方面有什么考量吗?为什么要将 height() 函数和 updateHeight() 函数分别放在 public 和 private 中呢? 主要看方法的使用范围,如果方法只在类内部使用,那么就设计为 private 。例如,用户单独 调用 updateHeight() 是没有意义的,它只是插入、删除操作中的一步。而 height() 是访问结 点高度,类似于 vector0 码力 | 329 页 | 27.34 MB | 1 年前3PyWebIO v1.2.3 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: 以上代码将在浏览器上显示如下: 布局函数还支持自定义各部分的尺寸: put_row([put_image(…) popup*† 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样式 put_row*† 使用行布局输出内容 put_column*† 使用列布局输出内容 put_grid* 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容 跨单元格 style* 自定义输出内容的css样式 其他 output* 内容占位符 输出域Scope io_ctrl.Output 使用网格布局输出内容 content – 输出内容. put_xxx() / None 组成的二维数组, None 表示空白. 数组项可以使用 span() 函数设置元素在 网格的跨度. cell_width (str) – 网格元素的宽度. cell_height (str) – 网格元素的高度. cell_widths (str) – 网格每一列的宽度. 宽度值用空格分0 码力 | 119 页 | 7.44 MB | 1 年前3PyWebIO v1.2.2 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: 以上代码将在浏览器上显示如下: 布局函数还支持自定义各部分的尺寸: put_row([put_image(…) popup*† 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样式 put_row*† 使用行布局输出内容 put_column*† 使用列布局输出内容 put_grid* 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容 跨单元格 style* 自定义输出内容的css样式 其他 output* 内容占位符 输出域Scope io_ctrl.Output 使用网格布局输出内容 content – 输出内容. put_xxx() / None 组成的二维数组, None 表示空白. 数组项可以使用 span() 函数设置元素在 网格的跨度. cell_width (str) – 网格元素的宽度. cell_height (str) – 网格元素的高度. cell_widths (str) – 网格每一列的宽度. 宽度值用空格分0 码力 | 119 页 | 7.41 MB | 1 年前3Hello 算法 1.1.0 Python版
(反码) = 1000 0001 (补码) + 1111 1111 (补码) = 1000 0000 (补码) → −128 你可能已经发现了,上述所有计算都是加法运算。这暗示着一个重要事实:计算机内部的硬件电路主要是基 于加法运算设计的。这是因为加法运算相对于其他运算(比如乘法、除法和减法)来说,硬件实现起来更简 第 3 章 数据结构 hello‑algo.com 56 单,更容易进行并行化处理,运算速度更快。 占用 2 字节;如果有超出 BMP 的字 符,则每个字符占用 4 字节。 ‧ Go 语言的 string 类型在内部使用 UTF‑8 编码。Go 语言还提供了 rune 类型,它用于表示单个 Unicode 码点。 ‧ Rust 语言的 str 和 String 类型在内部使用 UTF‑8 编码。Rust 也提供了 char 类型,用于表示单个 Unicode 码点。 需要注意的是,以 更大的数组,并将旧数组的内容复制到新数组中。 Q:在构建栈(队列)的时候,未指定它的大小,为什么它们是“静态数据结构”呢? 在高级编程语言中,我们无须人工指定栈(队列)的初始容量,这个工作由类内部自动完成。例如,Java 的 ArrayList 的初始容量通常为 10。另外,扩容操作也是自动实现的。详见后续的“列表”章节。 Q:原码转补码的方法是“先取反后加 1”,那么补码转原码应该是逆运算“先减0 码力 | 364 页 | 18.42 MB | 1 年前3Hello 算法 1.0.0 Python版
(反码) = 1000 0001 (补码) + 1111 1111 (补码) = 1000 0000 (补码) → −128 你可能已经发现了,上述所有计算都是加法运算。这暗示着一个重要事实:计算机内部的硬件电路主要是基 于加法运算设计的。这是因为加法运算相对于其他运算(比如乘法、除法和减法)来说,硬件实现起来更简 第 3 章 数据结构 hello‑algo.com 56 单,更容易进行并行化处理,运算速度更快。 占用 2 字节;如果有超出 BMP 的字 符,则每个字符占用 4 字节。 ‧ Go 语言的 string 类型在内部使用 UTF‑8 编码。Go 语言还提供了 rune 类型,它用于表示单个 Unicode 码点。 ‧ Rust 语言的 str 和 String 类型在内部使用 UTF‑8 编码。Rust 也提供了 char 类型,用于表示单个 Unicode 码点。 需要注意的是,以 更大的数组,并将旧数组的内容复制到新数组中。 Q:在构建栈(队列)的时候,未指定它的大小,为什么它们是“静态数据结构”呢? 在高级编程语言中,我们无须人工指定栈(队列)的初始容量,这个工作由类内部自动完成。例如,Java 的 ArrayList 的初始容量通常为 10。另外,扩容操作也是自动实现的。详见后续的“列表”章节。 64 第 4 章 数组与链表 � 数据结构的世界如同一堵厚实的砖墙。0 码力 | 362 页 | 17.54 MB | 1 年前3PyWebIO v1.3.1 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: 以上代码将在浏览器上显示如下: put_row([ put_column([ popup*† 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样式 put_row*† 使用行布局输出内容 put_column*† 使用列布局输出内容 put_grid* 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容 跨单元格 style* 自定义输出内容的css样式 其他 output* 内容占位符 输出域Scope io_ctrl.Output 使用网格布局输出内容 content – 输出内容. put_xxx() / None 组成的二维数组, None 表示空白. 数组项可以使用 span() 函数设置元素在 网格的跨度. cell_width (str) – 网格元素的宽度. cell_height (str) – 网格元素的高度. cell_widths (str) – 网格每一列的宽度. 宽度值用空格分0 码力 | 132 页 | 7.45 MB | 1 年前3PyWebIO v1.3.3 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: 以上代码将在浏览器上显示如下: put_row([ put_column([ popup*† 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样式 put_row*† 使用行布局输出内容 put_column*† 使用列布局输出内容 put_grid* 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容 跨单元格 style* 自定义输出内容的css样式 其他 output* 内容占位符 输出域Scope io_ctrl.Output 使用网格布局输出内容 content – 输出内容. put_xxx() / None 组成的二维数组, None 表示空白. 数组项可以使用 span() 函数设置元素在 网格的跨度. cell_width (str) – 网格元素的宽度. cell_height (str) – 网格元素的高度. cell_widths (str) – 网格每一列的宽度. 宽度值用空格分0 码力 | 132 页 | 7.45 MB | 1 年前3PyWebIO v1.4.0 使用手册
各种 复杂的布局: put_row() : 使用行布局输出内容. 内容在水平方向上排列 put_column() : 使用列布局输出内容. 内容在竖直方向上排列 put_grid() : 使用网格布局输出内容 通过组合 put_row() 和 put_column() 可以实现灵活布局: 以上代码将在浏览器上显示如下: 布局函数还支持自定义各部分的尺寸: put_row([put_image(…) popup*† 显示弹窗 close_popup 关闭正在显示的弹窗 布局与样式 put_row*† 使用行布局输出内容 put_column*† 使用列布局输出内容 put_grid* 使用网格布局输出内容 span 在 put_table() 和 put_grid() 中设置内容 跨单元格 style* 自定义输出内容的css样式 占位符 output* 内容占位符 输出域Scope cell_widths=None, cell_heights=None, direction='row', scope=None, position=- 1) → pywebio.io_ctrl.Output 使用网格布局输出内容 # Two code blocks of equal width, separated by 10 pixels put_row([put_code('A'), None, put_code('B')])0 码力 | 135 页 | 7.45 MB | 1 年前3
共 133 条
- 1
- 2
- 3
- 4
- 5
- 6
- 14