- 博客(48)
- 资源 (1)
- 收藏
- 关注
原创 python3目录
一、python3基础 列表(list)的增删改查及操作方法和元组(tuple)的查 字符串(str)的操作方法 字典 (dict) 的增删改查及操作方法 ascii、unicode、utf-8、gbk编码区别及转换 集合 (set) 的增删改查及 copy()方法 python文件操作 二、函数 函数基础 函数进阶——名...
2018-11-17 17:37:05 425
原创 MySQL表操作
目录一、查看数据库所有表二、数据表操作1、创建表●语法 ●是否可空●自增(auto_increment)●主键(primary key)●唯一索引(unique)●外键(foreign key)2、删除表和清空表3、修改表4、基本数据类型三、表内容操作1、增2、删3、改4、查三、MySQL测试题一、查看数据库所有表s...
2018-11-24 17:49:59 453
原创 MySQL用户操作
目录1、用户管理2、授权管理1、用户管理创建用户create user '用户名'@'IP地址' identified by '密码';create user 'admin'@'192.168.1.1' identified by '123123'; create user 'admin'@'192.168.1.%' identified by '123123'...
2018-11-19 15:02:35 540
原创 MySQL库操作
目录1、显示数据库2、创建数据库3、选择数据库4、删除数据库1、显示数据库show databases;默认数据库: mysql - 用户权限相关数据 test - 用于用户测试数据 information_schema - MySQL本身架构相关数据2、创建数据库语法(help create database)create database...
2018-11-19 14:39:49 232
原创 MySQL安装
目录一、概述二、下载安装Window版本Linux版本 一、概述1、什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库2、什么是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ? 答:他们均是一个软件,都有两个主要的功能:a. 将数据保存到文件或内存 b. 接收特定的命令,然后对...
2018-11-18 00:55:50 261
原创 IO模型——阻塞IO、非阻塞IO、多路复用IO、异步IO、selectors模块
目录一、IO模型介绍二、阻塞IO(blocking IO)三、非阻塞IO(non-blocking IO)四、多路复用IO(IO multiplexing)五、异步IO(Asynchronous I/O)六、IO模型比较分析七、selectors模块一、IO模型介绍 为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞 同步(sync...
2018-11-17 17:36:28 352
原创 协程
目录协程介绍Greenlet模块Gevent模块Gevent之同步与异步Gevent之应用举例一Gevent之应用举例二 之前我们学习了线程、进程的概念,了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位。按道理来说我们已经算是把cpu的利用率提高很多了。但是我们知道无论是创建多进程还是创建多线程来解决问题,都要消耗一定的时间来创建进程、创建线程、...
2018-11-17 17:14:27 1498
原创 Python标准模块--concurrent.futures模块(ThreadPoolExecutor:线程池,提供异步调用、ProcessPoolExecutor: 进程池,提供异步调用)
目录ProcessPoolExecutor: 进程池ThreadPoolExecutor:线程池 map的用法 回调函数https://docs.python.org/dev/library/concurrent.futures.html1 介绍concurrent.futures模块提供了高度封装的异步调用接口ThreadPoolExecutor:线程池,提供异步调用...
2018-11-16 10:49:50 6139
原创 线程(三):Lock(互斥锁)、RLock( 递归锁)、Semaphore(信号量)、Event(事件)、Condition(条件)、Timer(定时器)、queue(队列)
目录一、锁1)全局解释器锁GIL介绍2)同步锁(互斥锁)3)死锁与递归锁二、信号量三、事件四、条件五、定时器六、线程队列一、锁1)全局解释器锁GIL介绍 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成...
2018-11-15 17:34:19 737
原创 线程(二):线程开启方式与多线程(threading模块)
目录线程的创建Threading.Thread类1)线程的创建2)多线程与多进程3)Thread类的其他方法4)守护线程multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍(官方链接)线程的创建Threading.Thread类1)线程的创建#创建线程的方式1from threading im...
2018-11-15 17:01:32 465
原创 线程(一):理论知识
目录一、操作系统线程理论1)线程概念的引入背景进程有了进程为什么要有线程线程的出现2)进程和线程的关系3)线程的特点4)使用线程的实际场景5)内存中的线程6)用户级线程和内核级线程(了解)用户级线程内核级线程用户级与内核级线程的对比混合实现二、线程和python1)全局解释器锁GIL2)python线程模块的选择一、操作系统线...
2018-11-15 16:37:07 494
原创 进程(六):进程池(Pool)
目录进程池multiprocess.Pool模块概念介绍参数介绍主要方法其他方法(了解)代码实例回调函数进程池为什么要有进程池?进程池的概念。在程序实际处理问题过程中,忙时会有成千上万的任务需要被执行,闲时可能只有零星任务。那么在成千上万个任务需要被执行的时候,我们就需要去创建成千上万个进程么?首先,创建进程需要消耗时间,销毁进程也需要消耗时间。第二即便...
2018-11-13 11:59:20 8945 1
原创 进程(五):进程之间的数据共享
展望未来,基于消息传递的并发编程是大势所趋即便是使用线程,推荐做法也是将程序设计为大量独立的线程集合,通过消息队列交换数据。这样极大地减少了对使用锁定和其他同步手段的需求,还可以扩展到分布式系统中。但进程间应该尽量避免通信,即便需要通信,也应该选择进程安全的工具来避免加锁带来的问题。以后我们会尝试使用数据库来解决现在进程之间的数据共享问题。Manager模块介绍进程间数据是...
2018-11-13 10:26:08 7149 1
原创 进程(四):进程间通信 —— Queue(队列)和Pipe(管道)
目录进程间通信队列 概念介绍方法介绍代码实例生产者消费者模型JoinableQueue([maxsize]) 管道(了解)进程间通信IPC(Inter-Process Communication)队列 概念介绍创建共享的进程队列,Queue是多进程安全的队列,可以使用Queue实现多进程之间的数据传递。●Queue([maxsize]) 创建...
2018-11-13 10:18:30 1928
原创 进程(三):进程同步——Lock(锁)、Semaphore(信号量)、Event(事件)
目录锁 —— multiprocess.Lock信号量 —— multiprocess.Semaphore(了解)事件 —— multiprocess.Event(了解)锁 —— multiprocess.Lock 当多个进程使用同一份数据资源的时候,就会引发数据安全或顺序混乱问题。(1)多进程抢占输出资源import osimport timeimport ra...
2018-11-12 17:41:30 1379
原创 进程(一):理论知识
目录操作系统背景知识什么是进程进程的概念操作系统引入进程的概念的原因进程的特征进程与程序中的区别进程调度进程的并行与并发同步异步阻塞非阻塞状态介绍同步和异步阻塞与非阻塞同步/异步与阻塞/非阻塞进程的创建与结束进程的创建进程的结束操作系统背景知识顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。进程的概念起...
2018-11-12 17:08:49 311
原创 进程(二):进程开启方式与多进程
目录multiprocess模块multiprocess.process模块process模块介绍使用process模块创建进程进阶-多进程利用类开启进程守护进程socket聊天并发实例多进程中的其他方法multiprocess模块 之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了,运行中的程序就是一个进程。所...
2018-11-12 16:47:08 994
原创 网络编程
目录一.软件开发的架构1.C/S架构2.B/S架构二.网络基础1.一个程序如何在网络上找到另一个程序?2.osi七层模型3.socket概念socket层理解socket3.套接字(socket)的发展史基于文件类型的套接字家族基于网络类型的套接字家族4.tcp协议和udp协议三.套接字(socket)初使用基于TCP协议的socket...
2018-10-31 14:16:47 237
原创 logging模块(日志模块)
目录一、日志级别二、函数式简单配置三、logger对象配置四、logging模块的Formatter,Handler,Logger,Filter对象五、Logger与Handler的级别六、Logger的继承(了解)七、应用django的配置一、日志级别import logginglogging.debug('调试debug') #...
2018-10-17 11:31:41 1999
原创 configparser模块(用于配置文件的格式)
目录创建文件查找文件增删改操作该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)。创建文件来看一个好多软件的常见文档格式如下:[DEFAULT]ServerAliveInterval = 45Compression = yesCompressionLevel = 9ForwardX...
2018-10-16 14:09:43 276
原创 hashlib模块(摘要算法,用于加密)
目录算法介绍加盐算法介绍Python的hashlib提供了常见的摘要算法,如MD5,SHA1,SHA224, SHA256, SHA384, SHA512等算法。什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要...
2018-10-16 14:00:50 529 1
原创 面向对象进阶
目录isinstance和issubclass反射__str__和__repr____del__item系列__new____call____len____eq__ isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象class Foo(object):passobj = Fo...
2018-10-09 15:03:58 132
原创 面向对象
目录一、类的相关知识1)初识类声明类有两种作用:属性引用和实例化查看属性&调用方法关于self类属性的补充2)对象的相关知识定义及调用的固定模式3)类命名空间与对象、实例的命名空间4)面向对象的组合用法二、面向对象的三大特性1)继承什么是继承继承与抽象(先抽象再继承)继承与重用性派生接口类抽象类抽象类与接口类...
2018-09-29 14:47:09 1214
原创 异常处理
目录异常和错误1)错误分成两种2)什么是异常3)python中的异常种类异常处理什么是异常处理为什么要进行异常处理?如何进行异常处理?1: 使用if判断式2:python为每一种异常定制了一个类型,然后提供了一种特定的语法结构用来进行异常处理(try...except)日常处理知识总结异常和错误1)错误分成两种1.语法错误(这种错误,根本过不...
2018-09-23 19:22:50 273
原创 软件开发规范
#=============>bin目录:存放执行脚本#start.pyimport sys,osBASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))sys.path.append(BASE_DIR)from core import corefrom conf import my_log...
2018-09-23 11:53:50 1539
原创 模块与包
目录一、模块1)模块介绍1.什么是模块2.为何要使用模块3.以spam.py为例来介绍模块的使用:文件名spam.py,模块名spam2)使用模块之import1.import2.在第一次导入模块时会做三件事,重复导入会直接引用内存中已经加载好的结果3.被导入模块有独立的名称空间4.为模块名起别名5.在一行导入多个模块3)使用模块之from ... ...
2018-09-23 11:44:44 482
原创 序列化模块(python中的数据类型和str转换的模块)
目录(1)jsondumps序列化方法 loads反序列化方法dump序列化方法 load反序列化方法(对文件操作)ensure_ascii关键字参数其他参数说明json的格式化输出(2)pickle(3)shelve什么叫序列化——将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化。序列化的目的1、以某种存储形式使自定义对象持久化;2、将对...
2018-09-21 22:52:12 1201
原创 sys模块(和python解释器打交道的模块)
sys模块是与python解释器交互的一个接口sys.argv 命令行参数List,第一个元素是程序本身路径sys.exit(n) 退出程序,正常退出时exit(0),错误退出sys.exit(1)sys.version 获取Python解释程序的版本信息sys.path 返回模块的搜索路径,初始化时使用PYTHONP...
2018-09-20 17:14:51 179
原创 os模块(和操作系统打交道的模块)
'''os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cdos.curdir 返回当前目录: ('.')os.pardir 获取当前目录的父目录字符串名:('..')os.makedirs('dirname1/dirname2') 可生成多层递归目录os.remo...
2018-09-20 16:31:01 160
原创 random模块(随机数模块)
import random#随机小数print(random.random()) # 大于0且小于1之间的小数print(random.uniform(1,3)) #大于1小于3的小数#随机整数print(random.randint(1,5)) # 大于等于1且小于等于5之间的整数print(random.randrange(1,10,2)) # 大于等于1且小于1...
2018-09-20 15:54:25 1802
原创 time时间模块
目录表示时间的三种方式(1)时间戳(timestamp)(2)格式化的时间字符串(Format String): ‘1999-12-06’(3)元组(struct_time) 几种格式之间的转换#常用方法1.time.sleep(secs)(线程)推迟指定的时间运行。单位为秒。2.time.time()获取当前时间戳表示时间的三种方式在Python中,通常...
2018-09-19 23:00:43 646
原创 collections模块(python中的扩展数据类型)
目录1)namedtuple:生成可以使用名字来访问元素内容的tuple2)deque:双端队列,可以快速的从另外一侧追加和推出对象3)OrderedDict:有序字典4)defaultdict:带有默认值的字典5)Counter:3.Counter: 计数器,主要用来计数在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几...
2018-09-19 15:41:39 495
原创 正则表达式和re模块
目录正则表达式字符组 元字符量词. ^ $* + ? { }字符集[][^]分组 ()与 或 |[^]转义符 \贪婪匹配re模块 re模块下的常用方法注意1、findall的优先级查询2、split的优先级查询扩展1、匹配标签2、匹配整数3、数字匹配正则表达式字符组 在同一个位置可能出现...
2018-09-19 09:12:35 875
原创 递归函数与二分查找算法
一、递归函数1.递归调用的定义递归调用是函数嵌套调用的一种特殊形式,函数在调用时,直接或间接调用了自身,就是递归调用def foo(n): print(n) n += 1 foo(n)foo(1)2.递归最大深度最大递归深度默认是997/998 —— 是python从内存角度出发做得限制超过递归深度会报错:RecursionError: maxi...
2018-09-17 17:27:51 452
原创 内置函数和匿名函数
目录一、内置函数内置函数表1)作用域相关2)迭代器/生成器相关3)其他字符串类型代码的执行输入输出相关内存相关数据类型相关文件操作相关模块操作相关帮助方法和调用相关查看参数所属类型的所有内置方法4)基础数据类型相关5)和数据结构相关二、匿名函数一、内置函数截止到python版本3.6.2,现在python一共为我们提供了...
2018-09-07 15:41:34 1029
原创 迭代器和生成器及生成器表达式、列表推导式
目录1、迭代器2、生成器3、列表推导式4、生成器表达式5、各种推导式详解6、小结1、迭代器迭代是Python最强大的功能之一,是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。迭代器有两个基本的方法:__iter__() 和 __next__()。...
2018-09-06 13:47:04 378
原创 装饰器函数
目录一、装饰器1、开放封闭原则2、装饰器的固定格式:二、装饰器的使用1、无参装饰器(示例)2、带参装饰器(示例)3、多个装饰器装饰同一个函数一、装饰器装饰器的本质:一个闭包函数装饰器的功能:在不修改原函数及其调用方式的情况下对原函数功能进行扩展1、开放封闭原则 1.对扩展是开放的 为什么要对扩展开放呢? 我们说,任何一个程序,不...
2018-09-03 11:07:08 499
原创 函数进阶——名称空间与作用域
目录一、函数的命名空间命名空间一共分为一下三种:1)内置命名空间 —— Python解释器2)全局命名空间 —— 我们写的代码但不是函数中的代码3)局部命名空间 —— 函数三种命名空间之间的加载与取值顺序: 二、函数的作用域globals和locals方法 关键字:global三、函数的嵌套和作用域链 nonlocal关键字四、函数的本质...
2018-09-01 14:01:07 461
原创 函数基础
目录初识函数定义与调用1)函数的定义:2)函数的注释:3)函数的返回值 4)函数的参数: 4.1传递多个参数 4.2位置参数初识函数定义与调用1)函数的定义:#函数定义def mylen(): """计算s1的长度""" s1 = "hello world" length = 0 for i in s1: ...
2018-08-31 09:28:15 419
原创 集合 (set) 的增删改查及 copy()方法
目录一、集合1.集合的创建2.集合的增 2.1直接增加 2.2迭代增加3.集合的减 3.1 .remove('元素') 3.2 .pop() 3.3 .clear() 3.4 del4.集合的其他方法 4.1交集 (& 或者 intersection) 4.2并集 (| 或者 union) 4.3差...
2018-08-31 09:06:44 557
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人