一、进程和线程进程假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪费了CPU资源。是不是在程序A读取数据的过程中,让程序B去执行,当程序A读取完数据之后,让程序B暂停,然后让程序A继续执行?当然没问题,但这里有一个关键词:切换既然是切换,那么这就涉及到了状态的保存,状态的恢复,加上程序A与程序B所需要的系统资源(内存,硬盘,键盘等等)是不一样的。自然
系统 2019-09-27 17:55:24 2173
前言随着人工智能的日益火热,计算机视觉领域发展迅速,尤其在人脸识别或物体检测方向更为广泛,今天就为大家带来最基础的人脸识别基础,从一个个函数开始走进这个奥妙的世界。首先看一下本实验需要的数据集,为了简便我们只进行两个人的识别,选取了beyond乐队的主唱黄家驹和贝斯手黄家强,这哥俩长得有几分神似,这也是对人脸识别的一个考验:两个文件夹,一个为训练数据集,一个为测试数据集,训练数据集中有两个文件夹0和1,之前看一些资料有说这里要遵循“slabel”命名规则,
系统 2019-09-27 17:55:02 2173
汉诺塔的移动可以用递归函数非常简单地实现。题目:请编写move(n,a,b,c)函数,它接收参数n,表示3个柱子A、B、C中第1个柱子A的盘子数量,然后打印出把所有盘子从A借助B移动到C的方法[思路]假设:A柱子只有两个盘,上面为n-1个小盘,下面为1个大盘;B:0盘;C:0盘移动步骤①:A柱的n-1个盘,借助C柱的缓冲,移动到B柱,move(n-1,a,c,b)移动步骤②:A柱的1个盘,借助B柱的缓冲,移动到C柱,move(1,a,b,c)移动步骤③:B
系统 2019-09-27 17:54:20 2173
一、多线程同步由于CPython的python解释器在单线程模式下执行,所以导致python的多线程在很多的时候并不能很好地发挥多核cpu的资源。大部分情况都推荐使用多进程。python的多线程的同步与其他语言基本相同,主要包含:Lock&RLock:用来确保多线程多共享资源的访问。Semaphore:用来确保一定资源多线程访问时的上限,例如资源池。Event:是最简单的线程间通信的方式,一个线程可以发送信号,其他的线程接收到信号后执行操作。二、实例1)L
系统 2019-09-27 17:54:05 2173
概述从前面的对Python基础知识方法介绍中,我们几乎是围绕Python内置方法进行探索实践,比如字符串、列表、字典等数据结构的内置方法,和大量内置的标准库,诸如functools、time、threading等等,而我们怎么快速学习掌握并学会使用这个Python的工具集呢?我们可以利用Python的内置文档大量资源既可以掌握许多关于Python工具集的基本使用。dir函数Python中内置的dir函数用于提取某对象内所有属性的方法,,诸如对象的方法及属性
系统 2019-09-27 17:53:49 2173
今晚终于解决了串口发送的问题,更改代码如下:defwrite(self,data):ifself.alive:ifself.serSer.isOpen():self.serSer.write(data)defm_send1butOnButtonClick(self,event):ifself.ser.alive:send_data=''send_data+=str(self.m_textCtrl5.GetValue())self.ser.write(sen
系统 2019-09-27 17:53:00 2173
方法1(推荐):在Python中,False,0,’’,[],{},()都视为假,因此可以直接进行逻辑运算。此方法效率最高。方法2:调用len方法,查看元素个数是否为0。此方法效率较低。方法3:让解释器再生成一个空列表,并将这个空列表与list_temp进行比较。此方法效率最低。list_temp=[]print('方法1(推荐):在Python中,False,0,'',[],{},()都视为假,因此可以直接进行逻辑运算。此方法效率最高。')iflist_
系统 2019-09-27 17:52:58 2173
最近公司一个项目需要用到IAP升级,要求将APP的版本号在hex文件添加,于是尝试用python写一个脚本,运行之后可以自动增加版本号,并且日期都是当天的importreimporttime#获取日期的数据及校验和year=int(time.strftime("%y",time.localtime()))month=int(time.strftime("%m",time.localtime()))date=int(time.strftime("%d",ti
系统 2019-09-27 17:52:41 2173
前言Python中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。本文将会频繁地使用该模块的getsizeof()方法,因此,我先简要介绍一下:该方法用于获取一个对象的字节大小(bytes)它只计算直接占用的内存,而不计算对象内所引用对象的内存这里有个直观的例子:importsysa=[1,2]b=[a,a]#即[[1,2],[1,2]]#a、b都只有两个元素,所以直接占用的大小相等sys.get
系统 2019-09-27 17:51:00 2173
1.index方法list_a=[12,213,22,2,32]forainlist_a:print(list_a.index(a))结果:01234如果列表的没有重复的话那么用index完全可以的,那么如果列表中的元素有重复的呢?list_a=[12,213,22,2,2,22,2,2,32]forainlist_a:print(list_a.index(a))结果:012332338很显然结果不是你想要的!!!那么就看第二种方法>2.enumerate
系统 2019-09-27 17:50:58 2173
本人最近在研究机器学习方面的知识,要运用unet来实现医学图像分割,本文是为了实现unet代码而做的前期准备工作,综合网上的经验与自身的实践最终选择了keras+tensorflow-gpu来跑unet代码,下面是我安装tensoflow-gpu的整个过程,记录下来方便以后查阅。目录1.安装anaconda2.创建虚拟环境并安装python3.63.安装tensorflow-gpu3.1安装前奏——CUDA和cuDNN3.1.1下载CUDA3.1.2cuD
系统 2019-09-27 17:49:51 2173
如何不靠耐心测试通常,我们编写的软件会直接与那些我们称之为“肮脏的”服务交互。通俗地说,服务对我们的应用来说是至关重要的,它们之间的交互是我们设计好的,但这会带来我们不希望的副作用――就是那些在我们自己测试的时候不希望的功能。比如,可能我们正在写一个社交软件并且想测试一下“发布到Facebook的功能”,但是我们不希望每次运行测试集的时候都发布到Facebook上。Python的unittest库中有一个子包叫unittest.mock――或者你把它声明成
系统 2019-09-27 17:49:23 2173
协程定义:协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程。协程的标准定义:必须在只有一个单线程里实现并发修改共享数据不需加锁用户程序里自己保存多个控制流的上下文栈一个协程遇到IO操作自动切换到其它协程特点:协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此,协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每
系统 2019-09-27 17:49:15 2173
原文链接:https://blog.csdn.net/hanxia159357/article/details/81530361转载链接:https://blog.csdn.net/hanxia159357/article/details/81530361本文完成程序及测试数据集详细见:https://github.com/HanXia001/k-means-python3-本文主要内容:1.k-means解决的问题;2.k-means原理介绍;3.k-m
系统 2019-09-27 17:48:12 2173
Python3快速入门(十三)——Pandas数据结构一、Pandas数据结构简介Pandas有三种主要数据结构,Series、DataFrame、Panel。Series是带有标签的一维数组,可以保存任何数据类型(整数,字符串,浮点数,Python对象等),轴标签统称为索引(index)。DataFrame是带有标签的二维数据结构,具有index(行标签)和columns(列标签)。如果传递index或columns,则会用于生成的DataFrame的i
系统 2019-09-27 17:47:19 2173