今晚终于解决了串口发送的问题,更改代码如下: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 2171
如果有了解过python中的列表和元组,你可能会知道相对于列表,元组是不可变的,也就是说元组中的数据不能随意更改。除了列表是用中括号表示而元组是用小括号表示之外,这两种数据类型好像并没有什么不同,都是用来存放一系列的数据,事实真是如此吗?a=[1,3,5,7,'a']b=(1,3,5,7,'b')#现在改变b中的值b[2]=4TypeErrorTraceback(mostrecentcalllast)in()45#现在改变b中数据的值---->6b[2]=
系统 2019-09-27 17:52:59 2171
灰度变换作为一种图像预处理技术可以显著的改善图像的质量,下面将介绍几种灰度变换的方法1.gamma变换Gamma变换是对输入图像灰度值进行的非线性操作,使输出图像灰度值与输入图像灰度值呈指数关系:s=crλs=cr^{\lambda}s=crλ这个指数即为Gamma。Gamma变换就是用来图像增强,其提升了暗部细节,简单来说就是通过非线性变换,让图像从暴光强度的线性响应变得更接近人眼感受的响应,即将漂白(相机曝光)或过暗(曝光不足)的图片,进行矫正。经过G
系统 2019-09-27 17:52:58 2171
前言Python中的sys模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。本文将会频繁地使用该模块的getsizeof()方法,因此,我先简要介绍一下:该方法用于获取一个对象的字节大小(bytes)它只计算直接占用的内存,而不计算对象内所引用对象的内存这里有个直观的例子:importsysa=[1,2]b=[a,a]#即[[1,2],[1,2]]#a、b都只有两个元素,所以直接占用的大小相等sys.get
系统 2019-09-27 17:51:00 2171
作者:chen_h微信号&QQ:862251340微信公众号:coderpai(一)机器学习中的集成学习入门(二)bagging方法(三)使用Python进行交易的随机森林算法(四)Python中随机森林的实现与解释通过从单个决策树构建来使用和理解随机森林幸运的是,对于像Scikit-Learn这样的库,现在很容易在Python中实现数百种机器学习算法。这很容易,我们通常不需要任何关于模型是如何工作的知识来使用它。虽然不需要知道所有细节,但了解机器学习模型
系统 2019-09-27 17:50:48 2171
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。如下实例:tup1=('physics','chemistry',1997,2000)tup2=(1,2,3,4,5)tup3="a","b","c","d"创建空元组tup1=()元组中只包含一个元素时,需要在元素后面添加逗号tup1=(50,)元组与字符串类似,下标索引从0开始,可以进行截取,组合等。
系统 2019-09-27 17:49:55 2171
一:dict和set是python里面两种常用的数据结构,其底层是用哈希表实现的,类比java里面的HashSet和HashMap。dict和set的查询等操作的时间复杂度一般为O(1),远远好于一般数组的O(n)。之所以会这样,是因为dict和set维护这一张哈希表,通过哈希函数,可以快速定位到元素所在的位置。老版本的python的哈希表数据结构:--+-------------------------------+|哈希值(hash)键(key)值(v
系统 2019-09-27 17:45:28 2171
需求有一个抽奖应用,从所有参与的用户抽出K位中奖用户(K=奖品数量),且要根据每位用户拥有的抽奖码数量作为权重。如假设有三个用户及他们的权重是:A(1),B(1),C(2)。希望抽到A的概率为25%,抽到B的概率为25%,抽到C的概率为50%。分析比较直观的做法是把两个C放到列表中抽选,如[A,B,C,C],使用Python内置的函数random.choice[A,B,C,C],这样C抽到的概率即为50%。这个办法的问题是权重比较大的时候,浪费内存空间。更
系统 2019-09-27 17:45:25 2171
1、实现目标编写一个命令行通讯录程序,可以添加、查询、删除通讯录好友及电话2、实现方法创建一个类来表示一个人的信息。使用字典存储每个人的对象,名字作为键。使用pickle模块永久地把这些对象存储下来。使用字典内建的方法添加、删除修改人员信息。3、思维导图4、编写伪代码#1.创建字典用来存储通讯录信息#2.创建人员类,包含姓名、关系、电话三个属性#3.创建操作类,包含增加、查询、删除人员,退出,保存并退出五个方法#4.程序运行#5.判断通讯录文件是否存在#6
系统 2019-09-27 17:38:45 2171
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下。1.C++执行shell命令#include#include#includeintexec_cmd(std::stringcmd,std::string&res){if(cmd.size()==0){//cmdisemptyreturn-1;}charbuffer[1024]={0};std::stringresult="";FILE*pin=popen(cmd.c_str(),"r");i
系统 2019-09-27 17:38:25 2171