前言之前写过一个用python实现的百度新歌榜、热歌榜下载器的文章,实现了百度新歌、热门歌曲的爬取与下载。但那个采用的是单线程,网络状况一般的情况下,扫描前100首歌的时间大概得到40来秒。而且用Pyqt做的界面,在下载的过程中进行窗口操作,会出现UI阻塞的现象。前两天有时间调整了一下,做了几方面的改进:1.修改了UI界面阻塞的问题,下载的过程中可以进行其它的UI操作;2.爬虫程序采用一个主线程,8个子线程的方式快速爬取,网络状况一致的情况下,将扫描100
系统 2019-09-27 17:50:49 2438
概述降维是机器学习中十分重要的一种思想。在机器学习中,我们会经常处理一些高维数据,而高维数据情形下,会出现距离计算困难,数据样本稀疏等问题。这类问题是所有机器学习方法共同面临的问题,我们也称之为“维度灾难”。在高维特征中,也容易出现特征之间存在线性相关,也就是说有的特征是冗余的,因此降维也是必要的。降维的优点(必要性):去除噪声降低算法的计算开销(改善模型的性能)使得数据更容易使用使得数据更容易理解(几百个维度难以理解,几个维度可视化易理解)降维的方法有很
系统 2019-09-27 17:47:48 2438
在爬网易云评论的时候发现评论里有很多人发表情,然而python爬取表情后发现无法把表情写入文件里。从而导致异常。后来找到了两种方法判断。第一种:通过re.sub()删除评论里无法识别的字符串,re.sub有个弊端就是只有第一个表情图片错误的时候能处理,第二个就无法处理了defcharacter(a):dk=open(r'.\评论.txt','w')try:#如果报错,则获取报错的字符串信息dk.write(a)dk.close()exceptExcepti
系统 2019-09-27 17:57:28 2437
range()是Python的内置函数,用于创建整数的列表,可以生成递增或者递减的数列。xrange也有相同的功能,今天来看下它们之间的不同。range函数说明:range([start,]stop[,step]),根据start与stop指定的范围以及step设定的步长,生成一个序列。range示例:>>>range(6)[0,1,2,3,4,5]>>>range(1,6)[1,2,3,4,5]>>>range(0,6,2)[0,2,4]xrange函
系统 2019-09-27 17:52:56 2437
pyecharts中的Funnel函数可以绘制漏斗图,自动根据数据大小生成由大到小自上而下排列的一个漏斗样的图形。1、导入Funnel模块。frompyechartsimportFunnel2、初始化图形参数。funnel=Funnel("漏斗图",width=600,height=400,title_pos='center')3、输入数据并绘图。funnel.add("商品交易行为记录数据",['浏览','加入购物车','下单','支付','交易成功']
系统 2019-09-27 17:49:41 2437
PyQtGraph是Python平台上一种功能强大的2D/3D绘图库,相对于matplotlib库,由于其在内部实现方式上,使用了高速计算的numpy信号处理库以及Qt的GraphicsView框架,因此它在大数据量的处理及快速显示方面有着天然的优势,非常适合于需要快速绘图更新、视频或实时交互性的操作场合,在数学、科学和工程领域都有着广泛的应用。K线图介绍对于股票交易者来讲,K线图是弄清股票一段时间走势的一种最基本的图形工具,K线分为阳线和阴线,阳线和阴线
系统 2019-09-27 17:45:49 2437
回顾:信号的表示(一)信号的表示(二)1、指数序列指数序列一般形式为Aan.,可以用MATLAB中数组幂运算(即点幂运算)a.^n来实现。Python中用a**n实现。Python代码如下:"""离散信号表示之指数序列"""importnumpyasnpimportmatplotlib.pyplotaspltn=np.arange(0,15)a=3.0/4f=a**nplt.subplot(221)plt.title(u'a=3/4')plt.stem(n
系统 2019-09-27 17:54:00 2436
质量声明:原创文章,内容质量问题请评论吐槽。如对您产生干扰,可私信删除。主要参考:阿里云官方接口文档摘要:Python调用阿里云的智能语音交互接口,依靠对象存储服务(OSS)上传音频,实现录音文件识别,输出为txt文本。支持单轨/双轨的wav、mp3格式,最大支持文件512MB,最大录音时长2个小时。文章目录处理音频安装pydub安装ffmpeg音频处理程序上传至OSS录音识别程序识别结果处理音频由于阿里、百度、腾讯、讯飞等语音处理平台都对语音参数有特定要
系统 2019-09-27 17:50:23 2436
下面通过实例代码给大家介绍python中pyqt5树节点点击实现多窗口切换问题,具体代码如下所示:#coding=utf-8importsysfromPyQt5.QtWidgetsimport*fromPyQt5.QtCoreimport*fromPyQt5.QtGuiimport*classExample(QWidget):def__init__(self):super().__init__()self.initUI()definitUI(self):h
系统 2019-09-27 17:48:44 2436
继承什么是继承继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类python中类的继承分为:单继承和多继承classParentClass1:#定义父类passclassParentClass2:#定义父类passclassSubClass1(ParentClass1):#单继承,基类是ParentClass1,派生类是SubClasspassclassSubClass2(Paren
系统 2019-09-27 17:56:44 2435
打印二叉树最右侧节点其实是改自二叉树的层次遍历,多了一步,即输出每一层的末尾节点。如下题,输出最右侧节点结果应为[3,20,7]。首先看二叉树的层次遍历,使用队列(queue)来存储二叉树的节点,具体代码层次遍历实现:deflevelOrder(self,root:TreeNode)->List[List[int]]:list=[]ifrootisNone:returnlistqueue=[root]whilequeue:cur=[]foriinrange
系统 2019-09-27 17:56:40 2435
前言笔者在测试某web系统的过程中,需要用到“贷款卡号”,且此贷款卡号仅能使用一次,保存过后下一次无法再次使用相同的卡号。遂决定依据它的生成规则,自己写一段代码来实现。同时为了方便起见,贷款卡的前三位默认用数字来实现。1.生成规则如下:贷款卡编码一共有16位,最后两位是校验位整个贷款卡编码的规则如下:前三位:分别为数字或者大写英文字母第四位到第十四位:分别为数字后两位的校验码为前十四位乘以权重相加后除以97后的余数再加1后得到的数字,如果此数字为个位数,前
系统 2019-09-27 17:56:20 2435
原文链接:https://blog.csdn.net/sinat_15274667/article/details/51378882python文件的后缀名是.py,python文件既可以用来直接执行,也可以作为模块被导入。我们在使用python时经常会看到ifname==‘main‘:这样一个句子,这是什么呢?其中name是模块的内置属性,而这个内置属性的值取决于这个.py文件的使用方式,即你是作为模块导入还是直接执行。如果你是直接执行,那么这个name
系统 2019-09-27 17:55:52 2435
问题背景:有一批需要处理的文件,对于每一个文件,都需要调用同一个函数进行处理,相当耗时。有没有加速的办法呢?当然有啦,比如说你将这些文件分成若干批,每一个批次都调用自己写的python脚本进行处理,这样同时运行若干个python程序也可以进行加速。有没有更简单的方法呢?比如说,我一个运行的一个程序里面,同时分为多个线程,然后进行处理?大概思路:将这些个文件路径的list,分成若干个,至于分成多少,要看自己cpu核心有多少,比如你的cpu有32核的,理论上就
系统 2019-09-27 17:55:20 2435
1.open()语法open(file[,mode[,buffering[,encoding[,errors[,newline[,closefd=True]]]]]])open函数有很多的参数,常用的是file,mode和encodingfile文件位置,需要加引号mode文件打开模式,见下面3buffering的可取值有0,1,>1三个,0代表buffer关闭(只适用于二进制模式),1代表linebuffer(只适用于文本模式),>1表示初始化的buff
系统 2019-09-27 17:53:40 2435