草庐IT

Python推导式创建数列的方法

一、列表推导式列表推导式生成列表对象,语法如下:'''[表达式foritemin可迭代对象]或者[表达式foritemin可迭代对象if条件判断]'''例子l1=[xforxinrange(5)]print(l1)#[0,1,2,3,4]l2=[x*2forxinrange(1,5)]print(l2)#[2,4,6,8]l3=[x*2forxinrange(1,100)ifx%5==0]print(l3)#[10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160,170,180,190]l4=[xforxin"abcdefghij"]pr

Python基础之网络编程:7、网络并发编程理论与实操(三)

目录一、线程1、线程理论2、创建线程的两种方式2、1.继承类创建2、2.使用函数创建3、线程的诸多特性二、GIL全局解释器锁1、简介2、验证GIL的存在3、GIL与普通互斥锁4、python多线程是否有用5、死锁现象三、信号量1、简介2、使用方法四、event事件1、简介2、代码用法五、进程池与线程池1、简介2、代码用法六、协程1、简介2、代码用法3、协程实现并发一、线程1、线程理论进程与线程的区别:进程:进程是资源单位,表示一块内存空间线程:线程是执行单位,指在进程内的代码指令​ 可以将进程比喻成车间,线程就是车间里的流水线​ 一个进程内至少含有一个线程线程的特点:​ 1、一个进程内可以开设

Python基础之网络编程:7、网络并发编程理论与实操(三)

目录一、线程1、线程理论2、创建线程的两种方式2、1.继承类创建2、2.使用函数创建3、线程的诸多特性二、GIL全局解释器锁1、简介2、验证GIL的存在3、GIL与普通互斥锁4、python多线程是否有用5、死锁现象三、信号量1、简介2、使用方法四、event事件1、简介2、代码用法五、进程池与线程池1、简介2、代码用法六、协程1、简介2、代码用法3、协程实现并发一、线程1、线程理论进程与线程的区别:进程:进程是资源单位,表示一块内存空间线程:线程是执行单位,指在进程内的代码指令​ 可以将进程比喻成车间,线程就是车间里的流水线​ 一个进程内至少含有一个线程线程的特点:​ 1、一个进程内可以开设

Python数据类型间的相互转化及字符编码

字符间的相互转化:数字与字符串之间的相互转化1、数字(整数与浮点数)-->字符串:只需要在要转化的数字前加str进行转换就可以num=10.5str_num=str(num)print(str_num)2、字符串转化为数字-->使用int或float方法进行转化1整数字符串转化为数字(当字符串中只有数字是才可以进行转换)s="10"s_int=int(s)print(s_int)#10s_float=float(s)print(s_float)#10.02小数字符串转换为数字--->小数的字符串只能转换为float类型s="10.5"#s_int=int(s)#print(s_int)#Val

Python数据类型间的相互转化及字符编码

字符间的相互转化:数字与字符串之间的相互转化1、数字(整数与浮点数)-->字符串:只需要在要转化的数字前加str进行转换就可以num=10.5str_num=str(num)print(str_num)2、字符串转化为数字-->使用int或float方法进行转化1整数字符串转化为数字(当字符串中只有数字是才可以进行转换)s="10"s_int=int(s)print(s_int)#10s_float=float(s)print(s_float)#10.02小数字符串转换为数字--->小数的字符串只能转换为float类型s="10.5"#s_int=int(s)#print(s_int)#Val

Python基础-23枚举

23枚举  枚举是一组符号名称(枚举成员)的集合,枚举成员应该是唯一的、不可变的。23.1使用普通类实现枚举类classbasicWeek():SUN=0MON=1TUE=2WED=3THU=4FRI=5SAT=6#获取值print(basicWeek.SUN)#0  虽然这样也可以实现,但不严谨,也不安全,原因如下所示:枚举类中,不允许存在相同的枚举项(类变量)不允许在类外面直接修改枚举项的值classbasicWeek():SUN=0MON=1TUE=2WED=3THU=4FRI=5SAT=6SUN=7#这里会覆盖前面已经定义的值#获取值print(basicWeek.SUN)#7#在外面

Python基础-23枚举

23枚举  枚举是一组符号名称(枚举成员)的集合,枚举成员应该是唯一的、不可变的。23.1使用普通类实现枚举类classbasicWeek():SUN=0MON=1TUE=2WED=3THU=4FRI=5SAT=6#获取值print(basicWeek.SUN)#0  虽然这样也可以实现,但不严谨,也不安全,原因如下所示:枚举类中,不允许存在相同的枚举项(类变量)不允许在类外面直接修改枚举项的值classbasicWeek():SUN=0MON=1TUE=2WED=3THU=4FRI=5SAT=6SUN=7#这里会覆盖前面已经定义的值#获取值print(basicWeek.SUN)#7#在外面

【Python基础】函数

函数封装功能,提高应用的模块性和代码重用率1.定义函数1.1函数内的第一条语句是字符串时,该字符串就是文档字符串(docstring)defmy_fun():'''我是文档字符串函数内第一句是字符串时该字符串就是文档字符串'''passprint(my_fun.__doc__)'''运行结果:我是文档字符串函数内第一句是字符串时该字符串就是文档字符串'''1.2创建一个可以判断一个整数是否是素数的函数#判断某个整数是否是素数,是返回Ture,不是返回FalsedefisPrimer(num):ifnum==1:returnFalseforiinrange(2,num//2+1):ifnum%i

【Python基础】函数

函数封装功能,提高应用的模块性和代码重用率1.定义函数1.1函数内的第一条语句是字符串时,该字符串就是文档字符串(docstring)defmy_fun():'''我是文档字符串函数内第一句是字符串时该字符串就是文档字符串'''passprint(my_fun.__doc__)'''运行结果:我是文档字符串函数内第一句是字符串时该字符串就是文档字符串'''1.2创建一个可以判断一个整数是否是素数的函数#判断某个整数是否是素数,是返回Ture,不是返回FalsedefisPrimer(num):ifnum==1:returnFalseforiinrange(2,num//2+1):ifnum%i

Python中5大模块的使用教程(collections模块、time时间模块、random模块、os模块、sys模块)

1.模块的简单认识定义:模块就是我们把装有特定功能的代码进行归类的结果.从代码编写的单位来看我们的程序,从小到大的顺序:一条代码我们⽬目前写的所有的py文件都是模块.引入模块的方式:import模块fromxxximport模块2.collections模块collections模块主要封装了一些关于集合类的相关操作.比如,我们学过的Iterable,Iterator等.另外,collections还提供了一些除了基本据类型以外的数据集合类型.Counter,deque,OrderDict,defaultdict以及namedtuple2.1counter(counter主要用于计数)实例1: