![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
文章平均质量分 77
兜兜莫得钱
这个作者很懒,什么都没留下…
展开
-
二分法、三分法的详解
二分法、三分法的详解这两种方法都是对数据查找的一种高效率方式二分法二分查找是一种算法,也叫折半查找,在某些情况下相比较顺序查找,使用二分法查找的效率更高,但是使用该算法的前提是:查找的数据必须是有序的。如果要查找的元素包含在列表中,二分查找返回其位置;否则就返回null。举一个例子:我随便想一个1~100的数字。你的目标是以最少的次数猜到这个数字。你每次猜后,我会说小了、大了或对了。假设你从1开始依次向上猜,过程是1,2,3,4…这是简单查找,更准确的说是傻找。每次猜测只能排除一个数字。如果我原创 2021-02-02 17:13:54 · 4059 阅读 · 0 评论 -
互斥锁
互斥锁多线程的优势在于并发性,即可以同时运行多个任务。但是当线程需要使用共享数据时,也可能会由于数据不同步产生“错误情况”,这是由系统的线程调度具有一定的随机性造成的。而互斥锁的作用就是解决数据不同步问题。关于互斥锁,有个经典的“银行取钱”的问题。对于银行取钱有以下几个基本流程:用户输入账号、密码,系统判断用户的账户、密码是否匹配。用户输入取款金额。系统判断账户金额是否大于取款金额。如果余额大于取款金额,则取款成功;如果余额小于取款金额,则取款失败。是不是就这样看上去,这就是日常生活中的取原创 2021-01-17 17:07:01 · 222 阅读 · 0 评论 -
daemon守护线程
daemon守护线程当程序中拥有多个线程时,主线程执行结束并不会影响子线程继续执行。换句话说,只有程序中所有线程全部执行完毕后,程序才算真正结束。下面程序演示了包含 2 个线程的程序执行流程:import threading#主线程执行如下语句for i in range(5): print(threading.current_thread().getName())#定义线程要调用的方法,*add可接收多个以非关键字方式传入的参数def action(*add): fo原创 2021-01-15 17:25:09 · 149 阅读 · 1 评论 -
python线程的生命周期
python线程的生命周期通过分析线程的执行过程我们得知,当程序中包含多个线程时,CPU不是一直被的特定的线程霸占,而是轮流的执行各个线程。那么CPU在轮换执行线程的过程中,线程都经历了什么呢?线程从创建到消亡的整个过程中,可能会经历5种状态,分别是新建、就绪、运行、阻塞和死亡。下面给个图参考分析:线程的新建和就绪状态:无论是通过Thread类直接实例化对象创建线程,还是通过继承自Thread类的子类实例化创建线程,新建的线程在调用在start()方法之前,不会得到执行,此阶段的线程就处于新建原创 2021-01-11 09:08:48 · 258 阅读 · 1 评论 -
python爬虫和线程的简单知识总结
当心沉浸于某件事后,总觉时间过得好快,一周的时间就这样悄然而过了。接下来对于这周所学的一些知识点简单的总结整理一下:表单的创建对于表单的创建首先需要导入import模块import xlwt # 表单的创建首先需要导入import模块wb = xlwt.work() # 创建一表单sheet = wb.add_sheet('表一') # 工作簿名为表一sheet.write(x, y, '添加的元素') # x是行,y是列,添加的元素是你在(x,y)处所放的元素wb.sav原创 2021-01-09 17:43:05 · 136 阅读 · 0 评论 -
python创建线程详解
python创建线程详解python主要通过两种方式来创建线程:使用threading模块中的Thread类构造器创建线程。即直接对类threading.Thread进行实例化创建线程,并调用实例化对象的start()方法启动线程。继承 threading 模块中的 Thread 类创建线程类。即用 threading.Thread 派生出一个新的子类,将新建类实例化创建线程,并调用其 start() 方法启动线程。调用Thread类的构造器创建线程Thread 类提供了如下的 init(原创 2021-01-09 17:34:22 · 752 阅读 · 1 评论 -
typora的使用方法
1.普通文字内容直接写在文件中,以普通的文字效果显示2.标题在文字前加1~6个#标题1(加一个#变成一级标题)标题2(加2个#变成二级标题)标题3(加3个#变成三级标题)标题4标题5标题63.列表有序列表:内容前加 “数字. ” 数字一般从1开始,序号会自动增加,通过按回车可以撤销自动增加的功能第一步(二级有序) 在按回车键后按tab键在二级下按回车的效果第二步无语列表:内容前加’+‘或者’-’python数据分析人工智能web前端j原创 2020-12-07 19:05:03 · 211 阅读 · 0 评论 -
三目运算符详解
if a>b:max = a;else:max = b;但是 Python 提供了一种更加简洁的写法,如下所示:max = a if a>b else b这是一种类似于其它编程语言中三目运算符? :的写法。Python 是一种极简主义的编程语言,它没有引入? :这个新的运算符,而是使用已有的 if else 关键字来实现相同的功能。使用 if else 实现三目运算符(条件运算符)的格式如下:exp1 if contion else exp2condition 是判断条件,ex原创 2020-12-11 09:16:07 · 1813 阅读 · 0 评论