SciPy https://www.scipy.org/ SciPy中的数据结构: 1.ndarray(n维数组) 2.Series(变长字典) 3.DataFrame(数据框) NumPy适合于线性代数和随机数处理 import numpy as np aArray=np.ones((3,4)) aArray array([[1., 1., 1., 1.], [1., 1., 1., 1.], [1., 1., 1., 1.]]) SciPy有效计算numpy矩阵 import numpy a…
网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常详细,同时许多人对官方文档的理解和结构上都不能很好地把握,我也打算好好学习sklearn,这可能是机器学习的神器),下面先简单介绍一下sklearn. 自2007年发布以来,scikit-learn已经成为Python重要的机器学习库了,scikit-learn简称sklearn,支持包括分类,回归…
不依靠其他工具,直接使用Python的扩展API来编写一些简单的C扩展模块. 本篇参考PythonCookbook第15节和Python核心编程完成,值得注意的是,Python2.X和Python3.X在扩展库写法上略有不同,我们研究的是3.X写法. 一.源文件 Extest2.c C函数本体 c文件头必须包含"Python.h"头,以调用接口函数 这里面写了两个c函数,模块名称定为Extest #include "Python.h" #include <st…
PyPI 地址:https://pypi.python.org/pypi 如果你知道你要找的库的名字,那么只需要在右上角搜索栏查找即可. 1.pip安装扩展库 (1)安装最新版本的扩展库: cmd> pip install django (2)安装指定版本的扩展库: cmd> pip install django==1.9.7 (3)使用 pip 查看当前安装的库 cmd> pip show django (4)卸载库 cmd> pip  uninstall django 2.ta…
知识点一:Requests的详解及其基本使用方法 什么是requests库 Requests库是用Python编写的,基于urllib,采用Apache2 Licensed开源协议的HTTP库,相比urllib库,Requests库更加方便,可以节约我们大量的工作,完全满足HTTP测试需求. Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用,你会发现,其实urllib还是非常不方便的…
点击进入项目 这里的数组要点在于: 数组结构,array.array或者numpy.array 本篇的数组仅限一维,不过基础的C数组也是一维 一.分块讲解 源函数 /* Average values in an array */ double avg(double *a, int n) { int i; double total = 0.0; for (i = 0; i < n; i++) { total += a[i]; } return total / n; } 封装函数 /* Call d…
点击进入项目 一.C层面模块添加API 我们仍然操作如下结构体, #include <math.h> typedef struct Point { double x,y; } Point; 本节目标是封装两个Point结构体的操作函数为sample库的C级API,可以被sample以外的C库调用,首先写出以下函数指针结构体实例, /* pysample.c */ static PyObject *PyPoint_FromPoint(Point *p, int must_free) { /* 胶…
GIL操作 想让C扩展代码和Python解释器中的其他进程一起正确的执行, 那么你就需要去释放并重新获取全局解释器锁(GIL). 在Python接口封装中去释放并重新获取全局解释器锁(GIL),此时本段程序失去GIL运行,其他线程可以无视本函数的运行而运行,直到Py_END_ALLOW_THREADS: #include "Python.h" ... PyObject *pyfunc(PyObject *self, PyObject *args) { ... Py_BEGIN_ALLO…
requests库一个优雅而简单的用于Python的HTTP库,可以极大的简化我们发送http请求及获取响应的代码. requests是python的第三方库,所以使用之前需要先安装. 1.安装之后就可导入requests模板使用 import requests 2.requests发送请求 r = requests.get('https://github.com/timeline.json') r = requests.post("http://httpbin.org/post")…
4.Selenium库 (自动化测试工具,支持多种浏览器,爬虫主要解决js渲染的问题) pip install selenium 基本使用 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.webdriver.support import expected_condition…