之前一篇文章里提到了利用Cython来编译Python,这次来讲一下如何用Cython给Python写扩展库。两种语言混合编程,其中最重要的是类型的传递。我们用一个简单的例子进行入门:这次的目标是用C语言写一个Numpy的加法和元素相乘模块。在本例中,Numpy的array被传入到C语言模块内,变成了二维数组。1.头文件main.h:#ifndef_MAIN_H#define_MAIN_Hvoidplus(double*a,double*b,double*
系统 2019-09-27 17:54:47 2206
网上有许多方法提到要用append或者loc直接赋值,但是我运行发现都不行,不知道为啥。我是想把原dataframe中的几行提出来放到新的dataframe中。方法如下:#按照原dataframe的列标题创建新的dataframeNewDataFrame=pd.DataFrame(columns=OriginalDataFrame.columns.values)#i为要提取的行号row=OriginalDataFrame.loc[[i]]frames=[N
系统 2019-09-27 17:54:37 2206
同步的方法基本与多线程相同。1)Lock当多个进程需要访问共享资源的时候,Lock可以用来避免访问的冲突。复制代码代码如下:importmultiprocessingimportsysdefworker_with(lock,f):withlock:fs=open(f,"a+")fs.write('Lockacquiredviawith\n')fs.close()defworker_no_with(lock,f):lock.acquire()try:fs=o
系统 2019-09-27 17:54:13 2206
Python面向对象编程——属性查找与绑定方法一、属性查找类有两种属性:数据属性和函数属性。1、类的数据属性是所有对象共享的#类的数据属性是所有对象共享的,id都一样print(id(OldboyStudent.school))print(id(s1.school))#4377347328print(id(s2.school))#4377347328print(id(s3.school))#43773473282、类的函数属性是绑定给对象用的,称为绑定到对
系统 2019-09-27 17:53:57 2206
朋友需要对一个pdf文件进行分割,在网上查了查发现这个pypdf2可以完成这些操作,所以就研究了下这个库,并做一些记录。首先pypdf2是python3版本的,在之前的2版本有一个对应pypdf库。可以使用pip直接安装:pipinstallpypdf2官方文档:pythonhosted.org/PyPDF2/里面主要有这几个类:PdfFileReader。该类主要提供了对pdf文件的读操作,其构造方法为:PdfFileReader(stream,stri
系统 2019-09-27 17:53:00 2206
本文分享的实例主要实现的是Python+matplotlib绘制一个有阴影和没有阴影的3D条形图,具体如下。首先看看演示效果:完整代码如下:importnumpyasnpimportmatplotlib.pyplotaspltfrommpl_toolkits.mplot3dimportAxes3D#setupthefigureandaxesfig=plt.figure(figsize=(8,3))ax1=fig.add_subplot(121,projec
系统 2019-09-27 17:52:34 2206
前两天学习了一下socket编程,在向某大神请教问题时被嫌弃了,有一种还没学会走就想跑的感觉。大神说我现在的水平应该去做一些像是操作文件、序列号等的小练习来加深理解。下面是他给我出的小练习:1、datas=[['sherry',19,'female'],['flora',21,'female'],['june',15,'femal']],分别根据名字首字母和年龄进行排序输出;2、按照给定的输出方式进行输出比较结果,对Person类进行补充;class_ma
系统 2019-09-27 17:52:19 2206
图像的阈值处理一般使得图像的像素值更单一、图像更简单。阈值可以分为全局性质的阈值,也可以分为局部性质的阈值,可以是单阈值的也可以是多阈值的。当然阈值越多是越复杂的。下面将介绍opencv下的三种阈值方法。(一)简单阈值简单阈值当然是最简单,选取一个全局阈值,然后就把整幅图像分成了非黑即白的二值图像了。函数为cv2.threshold()这个函数有四个参数,第一个原图像,第二个进行分类的阈值,第三个是高于(低于)阈值时赋予的新值,第四个是一个方法选择参数,常
系统 2019-09-27 17:51:13 2206
数据聚合与分组处理——数据聚合、分组运算与转换、透视表与交叉表代码#-*-coding:utf-8-*-from__future__importdivisionfromnumpy.randomimportrandnimportnumpyasnpimportosimportmatplotlib.pyplotaspltnp.random.seed(12345)plt.rc('figure',figsize=(10,6))frompandasimportSeri
系统 2019-09-27 17:50:37 2206
由于客户提供的是excel文件,在使用时期望使用csv文件格式,且对某些字段内容需要做一些处理,如从某个字段中固定的几位抽取出来,独立作为一个字段等,下面记录下使用acaconda处理的过程;importpandasdf=pandas.read_excel("/***/***.xlsx")df.columns=[内部为你给你的excel每一列自定义的名称](比如我给我的excel自定义列表为:["url","productName","***",。。。,"
系统 2019-09-27 17:49:31 2206