python
LLS.
这个作者很懒,什么都没留下…
展开
-
Python基础19——进程、线程与协程
进程>线程>协程进程在Linux中用fork调用,在Windows中用multiprocessing 里的process来调用进程,可以理解为程序,线程可以理解为程序里的功能,或者说窗口,而协程就是更合理地分配资源,对资源进行调度的进程阻塞式和非阻塞式进程池:Pool非阻塞式:进程池名称.apply_async()全部添加至队列,立刻返回,没有等其他进程执行完毕再返回,回调函...原创 2020-05-06 09:57:35 · 92 阅读 · 0 评论 -
Python基础18——正则表达式
爬虫的基础,正则表达式^开头,$结尾re模块re.match():从第一位即开头找,没有就返回None,有就返回下标和内容re.search():将要匹配的都匹配一遍,就算不在开头也能找到,但找到一个以后就不会再找了re.findall():找全部,没找到则返回一个空列表re.sub(pattern, repl, string, count=0, flags=0):替换,repl可为字...原创 2020-05-06 09:57:03 · 109 阅读 · 0 评论 -
Python基础17——包及一些类库的使用
包的导入和模块导入差不多,为from 包名 import 模块名有个__init__.py的模块,是初始化模块,导包时如果有这个模块就会加载此模块没有__all__时,不能导入 * ,有则可以循环导入的原因:将导包代码放在了方法的上面,因为导包就意味着加载,这样无法执行方法而在加载包的时候卡住,无限循环导包循环导入问题解决方法:1.重构代码 2.把导包语句放在方法里 3.把导包语句放在最后...原创 2020-05-06 09:56:30 · 126 阅读 · 0 评论 -
Python基础16——多继承、单例和导入模块
多继承就是一个类继承多个类如class 类名(父类1,父类2)在Python2中多继承的顺序是从左到右,深度优先,就是一条路走到头,如果没有发现自己想要的方法就再换一条路一直到头而以后都为广度优先,即每层的搜索完没搜索到才会向下一层搜索单例是为了某些特定的情况而使用的,就是不管你创建了多少个对象,这些对象始终都是同一个地址Python中是不存再方法的重载的,也就是说只要方法名相同,无论你...原创 2020-05-06 09:55:14 · 280 阅读 · 0 评论 -
Python基础15——has a 和is a
has a:一个类中调用了另一个类的对象,就是把另一个类当做一种类似于int,或者str等类型的一种属性is a:就是继承,一个类继承了另一个类公式:class 类名(父类):如果子类中没有定义构造方法,就会去自动调用父类中的构造方法子类可以继承父类的属性,也可以重写父类的方法,如果子类和父类中有重名的方法,那么调用时就会以子类中的为准,即使子类中定义的方法有参数,而你实例化对象是时未...原创 2020-05-05 19:41:16 · 715 阅读 · 0 评论 -
Python基础14——初始面向对象
静态方法:和类方法一样,只不过不需要传参数,且装饰器不同,需要的装饰器为@staticmethod,都可以调用类方法,但都无法调对象方法。魔法方法:new():开辟空间,将空间传给__init__()用的,因为Python本身是由这个方法的,所以当你写了这个方法后,自带的方法就不能用了,所以你要返回它本身带的__new__()方法的值,这个返回值返回的时开辟的地址空间,将这个地址传递给ini...原创 2020-05-05 19:38:42 · 95 阅读 · 0 评论 -
Python基础13——初识面向对象
类的创建就是用classclass 类名:类,顾名思义,就是具有相同属性的物体,所以创建好一个类时,这个类所产生的对象都会具有类的特征,也就是属性像这个就是一个很简单的类,这里明定义了魔法函数,也就是def init(),这就像java里的构造器。你在类里定义的属性,那么当你创建对象时用到该属性,它就会先在自己的对象的空间里找这个属性,没有就去类里面找,而当你把属性直接创建在def i...原创 2020-05-05 19:37:27 · 135 阅读 · 0 评论 -
Python基础12——推导式、生成器、迭代器
列表推导式:当条件后再接条件时则意味着后面的条件实在前面条件里面,即是一个嵌套但当条件里有else时,则格式为[表达式 if 条件 else 表达式 for 变量 in 列表名]集合推导式:与列表推导式差不多,就是括号变成了{},且会自动去除重复项生成器(generator):将符号[]换成符号()即将推导式变为生成器生成器的作用,减少不必要的内存占用调用时可使用生成器内置函数....原创 2020-05-05 19:35:31 · 77 阅读 · 0 评论 -
Python基础11——异常
try:放执行语句,定义最好在外面定义,因为如果在里面定义则只能在try里使用except:或except 异常:有异常才会进入,放可能出现的异常,except后可加异常类型来规定当出现什么类型的异常时显示什么内容当为except 异常 as err:print(err)时,会打印出异常的具体内容else:当不出现异常时才会进入else语句finally:无论是否出现异常,最后...原创 2020-05-05 19:33:11 · 71 阅读 · 0 评论 -
Python基础10——文件
open(r’路径’,’r或者w’)函数进行对文件的操作r为读,rb为读转为二进制,rt是读txt等文本文档时用的w为写,wb为写转为二进制,为w时,是将原来的东西覆盖,而使用a时,则是在原来的内容上追加当开了流之后就要关闭流Python直接使用with open() as 名称:此模板即可在用完流后自动关闭流读read():将所知路径的所有内容读出来readline():只读一行...原创 2020-05-04 12:50:52 · 99 阅读 · 0 评论 -
Python基础09——全局变量与局部变量、内部函数、闭包、装饰器、匿名函数等
全局变量:顾名思义,全局变量就是在函数外部定义的变量,在函数内部可以查看,即可以打印,且可以再整个文件中都可以使用,可变的如list,dict,set,在函数内部想要修改直接修改即可,但想int,str,tuple等不可变的类型的变量想要在内部函数修改时则需要使用global 变量名来进行定义局部变量:只能在自己函数定义内使用,出去函数则无法使用,当为嵌套函数时,如果想在内层函数里改变外部函数里...原创 2020-05-04 11:35:13 · 165 阅读 · 0 评论 -
Python基础08——方法
增加代码的复用性,减少冗余度使用def 定义方法def 方法名([参数]):内容也需要缩进调用为方法名()当传入的参数为*参数名时,意味着传入的可以是多个值,为tuple类型当想传入一个元组类型时,要用*元组名的形式传入,也就是拆包与装包,**同理为**时,为字典,即一个key对应一个value的形式,也就是往里面传参数时要用key=value这样的形式,不能只写值,也就是关键字参数...原创 2020-05-04 11:31:21 · 69 阅读 · 0 评论 -
Python基础07——字典、集合
字典::dict,符号:{},有key,有value,一个key对应一个value,相同的key则后者将会把前者的value覆盖字典名[key]=value 将值存到字典中item() keys() values()字典名.item()将字典变为一个key对应一个value输出,字典名.keys()为将对应的键输出,字典名.values()将对应的value值输出get()函数,当不知道键...原创 2020-05-04 11:30:42 · 77 阅读 · 0 评论 -
Python基础06——枚举,算法及元组
枚举:enumerate(),index和value分别输出列表的下标以及其对应的值list1 = ['a','b','c','d','e'] for index,value in enumerate(list1): print(index,value)算法:选择排序与冒泡排序选择排序:将第一个元素挨个与后面每个元素比较,找出一个最小值放在最前面,即第一个位置,然后从第二个元素的位置开...原创 2020-05-04 11:30:00 · 768 阅读 · 0 评论 -
Python基础05——列表的使用
列表:[],类似于其他语言中的数组,可以为一维列表,也可以为二维列表,字符串列表可以代入到for循环和if判断里,每次取出一个字符串下表为-1则对应该列表的最后一个元素if里 in 和 ==的区别,in表示当所比较的内容在列表里,无论是否完全相等,只要包含在里面,都会执行if里的语句,而 == 则需要完全相等才会执行列表切片:列表可用[:]实现列表切片功能,从下标到下标,负数也可以,最后一...原创 2020-05-04 11:27:58 · 110 阅读 · 0 评论 -
Python基础04——一些内置函数
字符串类型的一些常用函数capitalize():将第一个字母大写title():将所有单词首字母大写,其余字母小写lower():将所有字符小写,可用于验证码upper();将所有字符大写istitle():返回true或false,查看字符串是否为标题类型,即所有单词首字母大写,其余字母小写查找:find() :查找字符串里是否包含想查找的内容,如果包含,则返回下标,如果不包含,...原创 2020-05-04 11:25:48 · 187 阅读 · 0 评论 -
Python基础03——基础语句
random 随机数函数import random 导入random.randint(1,10) 出现从1-10随机的整数if语句,while语句,for语句都与其他语言不同,没有小括号和大括号,靠缩进,elif 相当于其他语言的else if,当一个判断语句没有内容时一般写上pass,range(n),产生从0到n-1的整数,和数组类似if 条件 :while 条件 :for 变量名...原创 2020-05-04 11:22:13 · 251 阅读 · 0 评论 -
Python基础02——运算符
类型强制转换,只有当字符串类型的值全为数字时才能对其进行强转为int型,否则会报错input输入语句,与c不同的是Python中input语句内可以包含输出在控制台的语句如:Python中的input内部可以写入语句,但c就要使用printf语句来实现注意:input无论你输入什么类型的值它都会自动转换为字符串型,所以如果想输出数字不要忘记强转赋值运算符在Python中,给两个...原创 2020-05-04 11:19:34 · 176 阅读 · 0 评论 -
Python基础01——入门
Python是一门解释性语言,具有良好的可移植性,是一门弱类型语言,即定义时不需要写类型,像java,c,c++等强类型语言在定义时都要写类型,如int,float等,而Python则不需要。Python的组成可分三大部分 ,解释器+lib(内置库)+pip(包管理)更新pippython -m pip install –upgrade pip安装pip install 包名卸载pi...原创 2020-05-04 11:15:24 · 108 阅读 · 0 评论