python
文章平均质量分 53
「已注销」
这个作者很懒,什么都没留下…
展开
-
面向对象的三大特性
面向对象编程的三大特性分别是继承,封装和多态.1.继承继承是指在原有类的基础上创建新的类,新的类可以有自己特有的功能,也可以继承父类的功能.继承可以很方便的复用已有的代码,大大减少重复的代码量.python是支持多继承的.1.1父类与子类父类又被称为基类,超类;子类又被称为派生类.子类中有一个类指针指向父类,会继承父类中的属性/方法,如果子类中有与父类中相同名称的属性/...原创 2018-11-24 13:52:56 · 350 阅读 · 0 评论 -
线程
1.概念线程是轻量级的进程,它的存在依赖于进程. 线程只被分配给运行所需最低限度的系统资源(寄存器,栈),所以同一进程内的多个线程数据是共享的. 线程是计算机中被CPU调度的最小单位.2.守护线程守护线程与守护进程不同,守护线程随着主进程的结束才结束. 主线程不负责子线程的资源回收. 通过obj.setDaemon(True)或设置daemon参数的方式设置为守护线程.3.GI...原创 2018-12-16 13:47:31 · 118 阅读 · 0 评论 -
进程
1.概念进程是对进行中的程序的一种称呼. 多个进程之间互相数据隔离. 进程是操作系统中最小的资源分配单位.2.进程的三种状态就绪:当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态.运行:当进程已获得处理机,其程序正在处理机上执行,此时的进程状态称为执行状态.阻塞:由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态....原创 2018-12-16 13:05:31 · 151 阅读 · 0 评论 -
TCP与UDP
1.TCP协议1.1介绍TCP是Transmission Control Protocol缩写,中文名为传输控制协议. TCP协议是一种面向连接的,可靠的,基于字节流的传输层通信协议(流式传输). TCP协议是点对点的,并且效率不如UDP. TCP协议为了保证不发生丢包,会给每个包一个编号,接收端会按编号进行接收,成功收到后会向发送端发送一个相应的确认.如果发送端在一定时间内没有接收...原创 2018-12-08 15:21:10 · 167 阅读 · 0 评论 -
configparser模块用法
configparser模块是python内置的一个用于处理配置文件(.ini文件)的模块.import configparserconfig = configparser.ConfigParser()config['phonenum'] = {'ergou':'13344445555'}with open('example.ini', 'w') as f: config.wri...原创 2018-12-01 15:47:30 · 751 阅读 · 0 评论 -
异常处理
异常处理的基本语法:try: errorexcept NameError: print('遇到异常时执行这里')以上就是一个单分支单异常的处理,这种方式是异常处理中最常用的.除了单分支单异常,还有下面几种单分支多异常:try: 被检测的代码块except (异常类型1,异常类型2.....): try中一旦检测到以上异常类型,就执行这里...原创 2018-12-01 15:24:39 · 171 阅读 · 0 评论 -
logging模块用法
logging模块是python内置的一个日志模块,用于更加方便和灵活的记录日志文件.有两种方式使用logging模块来记录日志:1.基础配置import logginglogging.basicConfig(level = logging.INFO, #只打印大于此等级的日志 format = '%(asctime)s %(leve...原创 2018-12-01 14:31:57 · 143 阅读 · 0 评论 -
hashlib模块用法
hashlib模块是Python内置的一个摘要模块,这个模块中有多种算法,例如md5,sha1等,但是这些算法的作用相同,就是用于将一个字符串通过计算得到一串密文.这些算法有以下特点:加密的过程不可逆,不能通过加密后的密文解密得到原字符串. 对于同一字符串,使用同一算法计算得到的密文结果永远一致. 对于不同的字符串(即使是只多了一个空格),计算的结果永远不同.由于以上这些特点,has...原创 2018-12-01 13:33:55 · 834 阅读 · 1 评论 -
面向对象基础
python中一切皆为对象例如,python中的基础数据类型就是类,str是类,'abc'就是str的对象1.类定义:类是具有相同属性和方法的一类事物类名的首字母一般大写1.1类属性在类中,方法外定义的属性就叫做类属性,类属性属于类,由所有类的对象共享在使用类属性时,一般都通过类名.类属性名来使用.1.2方法函数在类中定义,由类的对象调用时就叫做方法 方法的第...原创 2018-11-24 14:41:24 · 127 阅读 · 0 评论 -
python驻存机制
一、什么是字符串驻留?字符串驻留是一种仅保存一份相同且不可变字符串的方法。基本原理:系统维护interned字典,记录已被驻留的字符串对象。当字符串对象a需要驻留时,先在interned检测是否存在,若存在则指向存在的字符串对象,a的引用计数减1;若不存在,则记录a到interned中。二、为什么要字符串驻留?显而易见,节省大量内存在字符串比较时,非驻留比较效率o(n)...转载 2018-10-26 14:14:27 · 852 阅读 · 0 评论 -
isdigit,isnumeric,isdecimal的差别
num = "1" #unicodenum.isdigit() # Truenum.isdecimal() # Truenum.isnumeric() # True num = "1" # 全角num.isdigit() # Truenum.isdecimal() # Truenum.isnumeric() # True num = b"1" # ...转载 2018-10-26 19:28:57 · 1438 阅读 · 0 评论 -
基本数据类型
基本数据类型包括两大类,为不可变数据类型,另一类为可变数据类型.1.不可变数据类型一类不可变数据类型包括数字(Number),字符串(String),元组(Tuple).1.1数字(Number)数字包含整型(int),浮点型(float),布尔型(bool),复数(complex)数字不可迭代1.1.1整型(int)不可迭代,主要用于计算和比较, 在python2中...原创 2018-11-04 10:56:08 · 381 阅读 · 0 评论 -
函数
函数是可重复使用的,组织好的,用于实现单一或者关联功能的代码块1.函数的定义:函数的定义方式为:def 函数名(参数): 函数体函数名的命名规则有:函数名由字母数字下划线组成 不能以数字开头 禁止使用python关键字 不能使用中文,拼音 区分大小写 要有意义 使用驼峰命名法或者下划线命名法2.函数的调用函数的调用方法为:函数名()严格来说是...原创 2018-11-04 13:14:21 · 224 阅读 · 0 评论 -
迭代器与生成器
1.迭代器迭代器是python的强大的功能之一,是访问容器类型元素的一种方式可迭代协议:有__iter__方法的变量/值都是可迭代对象可迭代对象可以通过__iter__方法来返回一个迭代器迭代器协议:有__iter__方法和__next__方法的变量/值都是迭代器迭代器特有的方法:__length_hint__返回迭代器中的元素个数 __setstate__ 控制迭代器开...原创 2018-11-05 23:39:57 · 98 阅读 · 0 评论 -
正则表达式相关
正则表达式(Regular Expression),又称规则表达式.正则表达式通常被用来检索,替换符合一定规则的字符串正则表达式的基本用法见下:元字符:[]:字符组,表示一个位置上可能出现的字符\d:digit,表示数字 \D表示除数字外的所有字符\w:word,表示字母数字下划线 \W表示除字母数字下划线的所有字符\n:next,表示换行符\t:tab,表示制表符...原创 2018-11-17 13:34:21 · 98 阅读 · 0 评论 -
常用内置模块
什么是模块?模块就是已经写好,包含了python定义和声明的文件.模块分为内置模块,第三方模块和自定义模块,使用模块中的内容需要提前使用import导入模块,使用方法为import 模块名或者 from 模块名 import 函数名使用第一种方法时,使用模块中的函数为模块名.函数名使用第二种方法时,直接使用函数名即可常用内置模块有:time(时间模块):主要与时间相...原创 2018-11-17 14:49:40 · 137 阅读 · 0 评论 -
初识C3算法
在python3中,所有的类都是新式类,继承顺序遵循广度优先的C3算法.C3算法的规则如下:每一个类的继承顺序都是从父类向子类看 形成一个指向关系的顺序[当前类]+[父类的继承顺序] 如果一个类出现在从左到右的第一个顺序上并且没有出现在后面顺序中或者出现在后面的顺序中但是仍然是第一顺序,那么就把这个类提取出来例如下图: ...原创 2018-11-24 11:36:43 · 1966 阅读 · 1 评论 -
协程
1.概念协程又称纤程,轻型线程,指同一线程中能够互相切换的多个任务.协程是代码级别的,对于操作系统来说并不可见.由于协程之间的切换是代码级别的,不涉及到操作系统,不需要操作系统去进行切换,所有协程更加高效.协程能够提高线程对CPU的利用率.协程的特点:与进程,线程比起来,协程不存在数据不安全的问题. 协程不能利用多核的性能.协程是python中比较好的工具.2.基本...原创 2018-12-16 14:03:33 · 158 阅读 · 0 评论