Flask入门教程
能更好的服 务器,我们会在最后一章学习。 第 2 章:Hello, Flask! 15 解剖时间 下面我们来分解这个 Flask 程序,了解它的基本构成。 首先我们从 flask 包导入 Flask 类,通过实例化这个类,创建一个程序对象 app : from flask import Flask app = Flask(__name__) 接下来,我们要注册一个处理 环境变量 FLASK_APP 来告诉 Flask 你要启动哪个程序。 Flask 通过读取这个文件对应的模块寻找要运行的程序实例,你可以把它设置成下 面这些值: 模块名 Python 导入路径 文件目录路径 管理环境变量 现在在启动 Flask 程序的时候,我们通常要和两个环境变量打交道: FLASK_APP 和 FLASK_ENV 。因为我们的程序现在的名字是 app 板》找到,Faker 相关内容可以在第 7 章找到。 第 3 章:模板 28 第 4 章:静态文件 静态文件(static files)和我们的模板概念相反,指的是内容不需要动态生成的文 件。比如图片、CSS 文件和 JavaScript 脚本等。 在 Flask 中,我们需要创建一个 static 文件夹来保存静态文件,它应该和程序模 块、templates 文件夹在同一目录层级,所以我们在项目根目录创建它:0 码力 | 127 页 | 7.62 MB | 1 年前3Python3 基础教程 - 廖雪峰
如果你已经把 my_abs()的函数定义保存为 abstest.py 文件了,那么,可 以在该文件的当前目录下启动 Python 解释器,用 from abstest import my_abs 来导入 my_abs()函数,注意 abstest 是文件名(不含.py 扩展名): import 的用法在后续模块一节中会详细介绍。 空函数 如果想定义一个什么事也不做的空函数,可以用 pass + step * math.cos(angle) ny = y - step * math.sin(angle) return nx, ny import math 语句表示导入 math 包,并允许后续代码引用 math 包里的 sin、 cos 等函数。 然后,我们就可以同时获得返回值: >>> x, y = move(100, 100, 60, math.pi 'CZ'] 三层和三层以上的循环就很少用到了。 运用列表生成式,可以写出非常简洁的代码。例如,列出当前目录下的 所有文件和目录名,可以通过一行代码实现: >>> import os # 导入 os 模块,模块的概念后面讲到 >>> [d for d in os.listdir('.')] # os.listdir 可以列出文件和目录 ['.emacs.d', '.ssh', '.Trash'0 码力 | 531 页 | 5.15 MB | 1 年前3python3学习手册
③py2的源码文件默认使用ascii编码,除非指定了 # -*- coding: u�-8 - *-,py3源码文件默认使用u�8编码 若要在py2中也使用py3中的这些特性,可以导入名为 __future__ 的 包,导入后,py2会启导入的功能使得也支持py3的这些特性。同时py2 的这些原有特性会被py3覆盖 让源代码兼容python2和python3,只需要在代码开头添加以下几行, 然后都用py3的语法去写代码: sys if sys.version_info[0] < 3: reload(sys) sys.setdefaultencoding('utf-8') 解析: ★打印函数 导入print_func�on后,让python2也支持print()函数 (以下代码在py2与py3都可正常执行) from __future__ import print_function str_1 /usr/bin/env python # -*- coding: utf-8 -*- from __future__ import unicode_literals str1 = "我们" # 导入unicode_literals后,默认同 u"我们" str2 = u"我们" print len(str1) print len(str2) 结果: 2 2 ★绝对引入 from __future__0 码力 | 213 页 | 3.53 MB | 1 年前3Django 官方教程翻译项目
也提供了其他更丰富的控制方式。 接下来,你就可以使用一套便捷而丰富的 Python API 用于访问你的数据。这些 API 是自动即时 创建的,你不用编写其他任何代码。 1. # 从我们的 news 应用里导入模型(译注:记者和文章模型)。 2. >>> from news.models import Reporter, Article 3. 4. # 现在系统中还没有记者。 5. >>> Reporter URL 成功匹配。(如果全部模式都无法匹配,Django 会返回一个404视图。)这个过程会在瞬间完成, 因为这些正则表达式在启动时就被编译了。 一旦其中一个正则表达式匹配成功,Django 就会导入并调用指定的视图——那是一个简单的 Python 函数。视图会被传进一个请求(requeset)对象——其中包含了请求元数据——和正则表达式匹配到的 那些参数值。 比如,如果用户请求了“/ar 的标记。这个标记表明这个特性仅适用开发版的 Django, 而它们可能无法在当前版本工作。 如果想验证是否成功安装了 Django,可以在终端输入 python。然后在 Python 提示符下,尝试 导入 Django: 1. >>> import django 2. >>> print(django.get_version()) 3. 1.11 如果版本和上面不一样,那你可能安装了其他版本的0 码力 | 103 页 | 1.86 MB | 1 年前3Python 标准库参考指南 3.7.13
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1659 32 导入模块 1661 32.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1661 32.2 pkgutil 必需的,并且仅在这里描述。 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接口, 例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模块则提供 针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 breakpointhook() ,直接传递 args 和 kws 。默认情况下,sys.breakpointhook() 调用pdb.set_trace() 且没有参数。在这种情况 下,它纯粹是一个便利函数,因此您不必显式导入pdb 且键入尽可能少的代码即可进入调试器。但是, sys.breakpointhook() 可以设置为其他一些函数并被breakpoint() 自动调用,以允许进入你想 用的调试器。 3.7 新版功能0 码力 | 1961 页 | 9.14 MB | 9 月前3Python 标准库参考指南 3.7.13
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1561 32 导入模块 1563 32.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1563 32.2 pkgutil 必需的,并且仅在这里描述。 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接 口,例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模 块则提供针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 breakpointhook() ,直接传递 args 和 kws 。默认情况下,sys.breakpointhook() 调用pdb.set_trace() 且没有参数。在 这种情况下,它纯粹是一个便利函数,因此您不必显式导入pdb 且键入尽可能少的代码即可进入 调试器。但是,sys.breakpointhook() 可以设置为其他一些函数并被breakpoint() 自动调 用,以允许进入你想用的调试器。 3.7 新版功能0 码力 | 1846 页 | 9.09 MB | 9 月前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1627 31 导入模块 1629 31.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1629 31.2 pkgutil 必需的,并且仅在这里描述。 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接 口,例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模 块则提供针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 breakpointhook() ,直接传递 args 和 kws 。默认情况下,sys.breakpointhook() 调用pdb.set_trace() 且没有参数。在 这种情况下,它纯粹是一个便利函数,因此您不必显式导入pdb 且键入尽可能少的代码即可进入 调试器。但是,sys.breakpointhook() 可以设置为其他一些函数并被breakpoint() 自动调 用,以允许进入你想用的调试器。 引发一个审计事件0 码力 | 1927 页 | 9.69 MB | 9 月前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1627 31 导入模块 1629 31.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1629 31.2 pkgutil 必需的,并且仅在这里描述。 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接 口,例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模 块则提供针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 breakpointhook() ,直接传递 args 和 kws 。默认情况下,sys.breakpointhook() 调用pdb.set_trace() 且没有参数。在 这种情况下,它纯粹是一个便利函数,因此您不必显式导入pdb 且键入尽可能少的代码即可进入 调试器。但是,sys.breakpointhook() 可以设置为其他一些函数并被breakpoint() 自动调 用,以允许进入你想用的调试器。 引发一个审计事件0 码力 | 1927 页 | 9.69 MB | 9 月前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1739 31 导入模块 1741 31.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1741 31.2 pkgutil 必需的,并且仅在这里描述。 不过这个库主要是由一系列的模块组成。这些模块集可以不同方式分类。有些模块是用 C 编写并内置于 Python 解释器中;另一些模块则是用 Python 编写并以源码形式导入。有些模块提供专用于 Python 的接口, 例如打印栈追踪信息;有些模块提供专用于特定操作系统的接口,例如操作特定的硬件;另一些模块则提供 针对特定应用领域的接口,例如万维网。有些模块在所有更新和移植版本的 breakpointhook() ,直接传递 args 和 kws 。默认情况下,sys.breakpointhook() 调用pdb.set_trace() 且没有参数。在这种情况 下,它纯粹是一个便利函数,因此您不必显式导入pdb 且键入尽可能少的代码即可进入调试器。但是, sys.breakpointhook() 可以设置为其他一些函数并被breakpoint() 自动调用,以允许进入你想 用的调试器。 引发一个审计事件0 码力 | 2052 页 | 9.74 MB | 9 月前3Python 标准库参考指南 3.9.20
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1633 31 导入模块 1635 31.1 zipimport --- 从 Zip 存档中导入模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1635 31.1.1 zipimporter abc ——关于导入的抽象基类 . . . . . . . . . . . . . . . . . . . . . . 1645 31.5.4 importlib.resources -- 资源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1651 31.5.5 importlib.machinery ——导入器和路径钩子函数。 ——导入器和路径钩子函数。 . . . . . . . . . . . . . . 1653 31.5.6 importlib.util ——导入器的工具程序代码 . . . . . . . . . . . . . . . . . . . . 1657 31.5.7 例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 2015 页 | 10.12 MB | 9 月前3
共 155 条
- 1
- 2
- 3
- 4
- 5
- 6
- 16