- 博客(17)
- 收藏
- 关注
原创 with上下文管理
两种方式上下文管理器本质就是能够支持with操作。任何实现了 enter() 和 exit() 魔法方法的对象都可称之为上下文管理器,上下文管理器对象可以使用 with 关键字。显然,文件(file)对象也实现了上下文管理器协议。第一方式简单版的文件操作功能(非完美版)# 上下文管理 器实现了__enter__ 与 __exit__这个两个魔法方法就是上下文管理器# 上下文...
2018-11-16 22:33:34
316
原创 导入:import xxx 和 from xx import xxx 的区别
import xxx 和 from xx import xxx 的区别先看一个小案例总结import * :可以理解为地址复制,就是引用from xxx import *:可以理解为内容复制,就是深拷贝多个模块要共享一个数据的时候必须使用 import xxx 这个方式...
2018-11-16 19:46:59
4496
原创 深拷贝、浅拷贝和引用
引用在python中,值是靠引用来传递来的。我们可以用id()来判断两个变量是否为同一个值的引用。上图:引用就是上边的这三个变量指向了同一个内存的地址。可变类型和不可变类型可变类型(修改数据,内存地址不会发生变化)有: 列表、字典、集合不可变类型(修改数据,内存地址必定发生变化)有: 数字、字符串、元组引用与拷贝之间的区别列表是怎么存数据的其实列表存的并...
2018-11-16 19:29:08
572
原创 python底层GIL
GIL全局解释器锁这是解释器内部的一把锁,确切一点说是CPython解释器内部的一把锁,所以要注意区分 这和我们在Python代码中使用Lock不是一个层面的概念。GIL产生的背景 在CPython解释内部运行多个线程的时候,每个线程都需要解释器内部申请相应的全局资源,由于C语言本身比较底层造成CPython在管理所有全局资源的时候并不能应对所有线程同时的资源请求,因此为了防止资源竞争...
2018-11-16 18:29:48
360
原创 正则
正则匹配单字符. 匹配任意1个字符(除了\n)[ ] 匹配[ ]中列举的字符[ab456c][a-z]\d 匹配数字,即0-9\D 匹配非数字,即不是数字\s 匹配空白,即 空格,tab键\t,\n\S 匹配非空白\w 匹配单词字符,即a-z、A-Z、0-9、_,国家的文字\W 匹配非单词字符匹配多字符*匹配前一个字符出现0次或者无限次,即可有可无+匹配前一...
2018-11-10 17:05:54
266
原创 多任务三(协程)
迭代迭代的概念:使用for循环遍历取值的过程叫做迭代可迭代对象:使用for循环遍历取值的对象叫做可迭代对象, 比如:列表、元组、字典、集合、range、字符串判断对象是否是可迭代对象:# 元组,列表,字典,字符串,集合,range都是可迭代对象from collections import Iterable# 判断对象是否是指定类型result = isinstance((3,...
2018-11-10 16:31:48
160
原创 多任务二(多进程)
进程介绍进程:通俗理解一个运行的程序或者软件,进程是操作系统资源分配的基本单位。线程:是程序最小的执行单位。注意:一个程序至少有一个进程,一个进程至少有一个线程,多进程可以完成多任务.进程的状态工作中,任务数往往大于cpu的核数,即一定有一些任务正在执行,而另外一些任务在等待cpu进行执行,因此导致了有了不同的状态。就绪态:运行的条件都已经慢去,正在等在cpu执行执行态:cpu...
2018-11-10 14:53:02
340
原创 linux系统和
Linux命令的基本使用使用原因在工作中,大量的 服务器维护工作 都是在 远程 通过 SSH 客户端 来完成的,并没有图形界面,所有的维护工作都需要通过命令来完成。如 磁盘操作、文件存取、目录操作、进程管理、文件权限 设定等。命令自动补全:tab切换使用过的命令:上/下键退出:ctrl + Clsls:查看当前文件夹所有内容ls /home/python/Desktop ...
2018-11-08 22:30:51
133
原创 数据库高级(事物、视图、索引)
– 事物(ACID)开启事务begin;或者start transaction;-- 原子性 一致性 第一步 打开 终端1 终端2 第二步 终端1 打开事物 begin/start transaction 终端1 update 表名 set 字段="xxx" where ...; 终端1 select * from 表名; 发现数据改变 第三步 终端2 sel...
2018-11-07 21:09:50
157
原创 数据库的查询二
–数据库操作前的准备– 创建数据库– create database python_test_1 charset=utf8;– 使用数据库– use python_test_1;– students表– create table students(– id int unsigned primary key auto_increment not null,– name...
2018-11-07 21:05:43
169
原创 数据库的概念和操作一
–01 mysql 数据库的操作-- 链接数据库mysql -uroot -pmysql-- 不显示密码 ****mysql -uroot -p-- 退出数据库 ****--quit/exit/ctrl + dexit-- sql语句最后需要有分号;结尾-- 显示数据库版本 versionselect version();-- 显示时间 nowselect no...
2018-11-07 20:53:17
163
原创 HTTP服务器--HTTP
浏览器访问服务器的过程http知识点网址的构成网址又称为URL,组成分为三部分比如: http://news.china.com.cn/2018-06/12/content_52060465.htmURL的格式为:协议部分:http://域名部分:news.china.com.cn资源路径部分:/2018-06/12/content_52060465.htm域名...
2018-11-07 16:52:10
313
原创 多任务一(多线程基础)
多线程版聊天机器人(设置守护住线程)# 创建一个tcp服务器端# 1. 初始化# 2. 绑定端口# 3. 设置被动模式# 4. 循环接收用户的请求# 5. 处理用户的请求# 6. 关闭import socketimport threadingdef client_exec(client): """
2018-11-07 14:59:36
209
原创 UDP基础知识点
UDP重要知识点(代码与思路)udp发送数据思路:1. 初始化socket2. 发送数据3. 关闭import socketdef main(): """使用udp发送数据"&quo
2018-11-07 14:25:51
1177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人