随笔分类 - Python
摘要:1. Django的Form主要具有以下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交的数据 初始化页面显示内容 2. 第一个案例: 3. Form 类 创建Form类时,主要涉及到 字段 和 插件 ,字段用于对用户请求数据的验证,插件用于自动生成HT
阅读全文
摘要:UUID是根据MAC以及当前时间等创建的不重复的随机字符串
阅读全文
摘要:1. 数据库配置 Django默认支持sqlite, mysql, oracle, postgresql 数据库: Django默认使用sqlite数据库,引擎名称: MySQL 引擎名称: MySQL 驱动程序: 2. ORM(对象关系映射) 表的创建: 作者模型: 一个作者有姓名; 作者详细模型
阅读全文
摘要:http请求中产生的两个核心对象: http请求: http响应: 所在位置: HttpRequest 对象的属性和方法: : 请求页面的全路径,不包括域名; : 请求中使用的HTTP方法的字符串表示(全大写表示,例如:GET,POST); : 包含所有HTTP GET参数的类字典对象; : 包含所
阅读全文
摘要:1. 模板的组成 HTML代码+逻辑控制代码 2. 逻辑控制代码的组成 2.1 变量格式: 2.2 万能的句点号 到目前为止,我们通过context传递的简单参数值主要是字符串,然而,模板系统能够非常简洁地处理更加复杂的数据 结构,例如 ,`dictionary`和自定义的对象。 在Django模板
阅读全文
摘要:URL配置就像Django所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表。 <br/ 参考资料 "Python 全栈"
阅读全文
摘要:1. 什么是 web 框架 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端; 1.2 自己搭建简易版Web框架 其中,接收HTTP请求,解析HTTP请求,发送HTTP响应由WSGI接口(Web Server Gateway Interface)
阅读全文
摘要:1. 准备工作 安装 : 是专门用于操作MySQL的python模块; 2. 操作MySQL 参考资料: "Python 全栈"
阅读全文
摘要:1. IO 多路复用 2. RabbitMQ 2.1 RabbitMQ 准备工作(以mac为例) 安装 : 安装 : 启动 : 2.2 RabbitMQ 消息分发轮询 先启动消息生产者,然后再分别启动3个消费者,通过生产者多发送几条消息,这几条消息会依次分配到各个消费者身上; 2.3 RabbitM
阅读全文
摘要:协程,又称微线程,协程是一种用户态的轻量级线程。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前 保存的寄存器上下文和栈。因此,协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每次过程重入时, 就相当于进入上一次调用的状态,换
阅读全文
摘要:1.1 相关方法及参数介绍 :将套接字绑定到地址。address地址的格式取决于地址族。在AF_INET下,以元组(host,port)的形式 表示地址; :开始监听传入的连接。backlog指定在拒绝连接之前,可以挂起的最大连接数量。 backlog等于5,表示内核已经接到的连接请求,但服务器还没
阅读全文
摘要:1. 序列化定义 把对象(变量)从内存中变成可存储或传输的过程称之为序列化, 在Python中叫pickling,其他语言中称之为serialization等; 序列化之后,就可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上; 把变量内容从序列化的对象重新读到内存里称之为反序列化,即unp
阅读全文
摘要:1. 闭包(closure) 闭包是函数式编程的重要语法结构; 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包; 2. 装饰器 2.1 类装饰器 装饰器函数其实是这样一个接口约束,它必须接受一个callable对象作为参数,然后返回一个calla
阅读全文
摘要:Python 的thread模块是比较底层的模块,Python的threading模块是对thread做了一些包装,可以更加方便的 被使用; 1. 使用 模块 2. 多线程之间共享全局变量 3. 互斥锁 4. 死锁 5. 信号量(Semaphore) 信号量用来控制线程并发数的,BoundedSem
阅读全文
摘要:1. 进程 1.1 进程的创建 fork 正在运行着的代码,就称为进程 1.2 全局变量在进程中不共享 1.3 多次fork 1.4 Process 创建子进程 1.5 Process 的子类 1.6 进程池 Pool(非阻塞方式) 1.7 apply 阻塞方式添加任务 1.8 进程间通信(Queu
阅读全文
摘要:1. 垃圾回收 小整数对象池 Python对小整数的定义是 ,这些整数对象是提前建立好的; 在一个Python程序中,所有位于这个范围内的整数,使用的都是同一个对象; 单个字符共用对象,常驻内存; 大整数对象池 每一个大整数,均创建一个新的对象; 机制 单个单词,不可修改,默认开启intern机制,
阅读全文
摘要:1. 生成器 通过列表生成式,可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个 包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数 的元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在
阅读全文
摘要:1. vi 的三种工作模式 命令模式 打开文件首先进入命令模式, 是使用 的入口; 通过命令对文件进行常规的编辑操作, 例如: 定位,翻页,复制,粘贴,删除等; 末行模式 执行保存,退出等操作,是 的出口; :表示 ; 编辑模式 正常的编辑文字 2. vi 操作文件 : 打开或新建文件; : 打开文
阅读全文
摘要:1. 第一步:查看以下路径是否安装有 Python 3.x 2. 建立软连接 参考资料 "Mac brew 更新后 command not found:python" "pip3:command not found but python3 pip is already installed"
阅读全文
摘要:1. 模块 1.1 概念 每一个以扩展名 结尾的 源代码文件都是一个模块; 模块名同样也是一个标识符,需要符合标识符的命名规则; 在模块中定义的全局变量, 函数, 类都是提供给外界直接使用的工具; 1.2 模块的两种导入方式 导入 导入 1.3 的搜索路径 1.4 循环导入 1.5 开发原则 属性:
阅读全文