Python
GavinZhou_xd
一名小小程序员的努力,因为热爱,所以坚持
展开
-
OpenCV2.3.1+Python2.7.3+Numpy等的配置
OpenCV2.3.1+Python2.7.3+Numpy等的配置最近自己准备学习Python,之前也看了点基础知识。做图形这块需要用到OpenCV所以就需要配置环境,之前准备用的是Python3,后来发现好多python貌似并不兼容Python3,所以就装了2.7.3。 我的机子是64位的win7,用的是python2.7.3,OpenCV用的是2.3.1,网上参照了好多发现根本不能用,以下自己原创 2015-07-12 17:02:15 · 1618 阅读 · 0 评论 -
python中的装饰器
很多时候我们可能会有这样的需求,就是在调试的时候我们会想打印出某些变量出来看看程序对不对,然后在我们调试好了的时候再把这些print语句注释;这样做确实比较麻烦,我们在想有没有简单的方法:就是在需要打印的时候加上,同时不改变函数的内部代码其实这就是装饰器的思想了: decorators work as wrappers, modifying the behavior of the co原创 2017-10-24 13:24:35 · 610 阅读 · 0 评论 -
Mac无法升级six, numpy等
OS 10.10以上,会出现你无法直接使用pip升级向six, numpy等,报错就是各种权限不够,加上sudo结果也一样,原因就是MacOS的系统完整性保护(SIP). 这里有比较详细的讨论: https://stackoverflow.com/questions/29485741/unable-to-upgrade-python-six-package-in-mac-osx-10-10-2解原创 2017-09-26 18:27:03 · 1624 阅读 · 1 评论 -
Ipynb文件的打开
RT,ipynb文件用gedit直接打开的话,太多附加信息,此时需要在浏览器端打开升级ipython太低版本的ipython是不行的,出现的错误可能是这样的:Error loading notebookUnreadable Notebook:Unsupported JSON nbformat version 4(supproted version: 3)实际就是版本太低,此时升级或者卸载重装都可以原创 2016-09-18 15:21:29 · 53118 阅读 · 1 评论 -
Python-OpenCV(5)
这次博客咱们比较下,python的函数、numpy的函数和OpenCV的函数的效率问题,让大家对销量高通情况下如何使用有比较直观的认识程序(语句)运行时间的测量 (1) python的time模块 (2) cv2.getTickCount(),返回时钟数,cv2.getTickFrequency()返回始终频率,相除即可达到运行时间 (3) Ipython的%timeit实验1代码原创 2016-04-06 09:43:47 · 2448 阅读 · 0 评论 -
Numpy使用4
上篇博客写到了numpy的索引与切片,这篇博客介绍numpy的一些数学统计上的使用和如何结合numpy实现对结构化文本的处理通用函数所谓的通用函数(ufunc)就是指元素级别的数组函数,你可以将其看做简单函数其接受一个或者多个标量值,产生一个或者多个标量值。In [87]: arrOut[87]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])In [88]: np.s原创 2016-03-11 10:22:09 · 1116 阅读 · 0 评论 -
Numpy使用3
上一篇博客介绍了numpy的几种初始化方式和numpy的数据类型(dtype)和shape的相关知识,这篇介绍numpy矩阵的索引与切片矢量化numpy数组有一个很好的特性就是支持vectorization,大小相同的数组做任何操作将在元素级别进行运算,这意味着我们可以像使用matlab那样对数据进行操作In [46]: a = np.array([[1,2,4],[3,5,6]])In [47]:原创 2016-03-08 16:57:05 · 643 阅读 · 0 评论 -
Numpy使用2
上一个博客写到了numpy的特性,如何安装以及功能初探。这一篇就讲讲numpy的常用功能以及与其它python库的结合使用。假设你已经成功执行下列语句:import numpy as np初始化(1)直接创建## 创建一维数组In [8]: test_list = [1,3,5,6,7]In [9]: array_numpy = np.array(test_list)In [10]: array_原创 2016-03-08 10:09:37 · 1181 阅读 · 0 评论 -
Numpy使用1
Numpy介绍NumPy is the fundamental package for scientific computing with Python. It contains among other things:a powerful N-dimensional array objectsophisticated (broadcasting) functionstools for inte原创 2016-03-07 17:48:22 · 1211 阅读 · 2 评论 -
Python解析JSON
什么是JSONJSON(JavaScript Object Notation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。JSON是Javascript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。JSON 表示 JavaScript 对象表示法(JavaScript Object Notation)这个格式由 Douglas Crockfor原创 2016-03-16 17:05:58 · 1553 阅读 · 0 评论 -
python基础----装饰器
代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator),本质上是一个返回函数的高阶数一个简单例子假设我们现在有个函数是这样的:def now(): print "2015-12-26">> now.__name__>> 'now' #函数名我们现在希望增强下函数的功能,在函数调用前后自动打印日志,但又不希望修改now()函数的定义,这时候可以使用装饰器:def log(fu原创 2015-12-26 18:02:01 · 846 阅读 · 0 评论 -
python基础----函数作为返回值
从一个例子讲起高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 还是考虑这个问题:对可变参数进行求和 看了上一讲的已经知道,可以使用’*’来表示接受一个tuple参数,代码大概可以这样写:def calc_sum(*args): ax = 0 for n in args: ax = ax + n return ax但是这有个问题,如果我不需原创 2015-12-25 11:01:25 · 3637 阅读 · 0 评论 -
python基础----函数参数
函数参数(1)直接传入>>def test(a,b): return a+b>>test(3, 4)(2)默认参数>> def add(a, b=2, c=5): return a+b>> add(3)>> add(3,4)>> add(3,4,5)此时将默认参数写在非默认参数之后即可(3)可变参数(1)和(2)中的参数数量都不可以变,如果需要传如可变参数怎么办?假原创 2015-12-24 17:08:11 · 894 阅读 · 1 评论 -
python基础----map和reduce
map和reduceMap简单来说就是:一个映射函数就是对一些独立元素组成的概念上的列表的每一个元素进行指定的操作 Reduce简单来说就是:对一个列表的元素进行适当的合并举两个小例子: (1)现在有一个python的list假设为A: A = [1,4,2,5,6,8,3],现在需要你对它们进行求和; 当然我们使用简单的sum()就可以搞定,不过我想说的是map和reduce的概念;我们知原创 2015-12-24 16:19:09 · 827 阅读 · 0 评论 -
Python基础----数据变量和变量
**整数Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。 计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。**浮点数浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,原创 2015-12-20 22:36:05 · 983 阅读 · 0 评论 -
Python入门-----编辑器
编辑编写和运行Python程序,需要编辑器,主要分为两种: (1)文本编辑器 目前我在用的是Sublime Text,可以安装很多插件使用很方便,推荐 缺点:无法进行单步调试 (2)集成IDE 用过Pycharm和Spyder,感觉Pycharm更好一点,推荐使用,功能强大类似eclipse+pydev 缺点:比较耗资源运行Windows: 直接cmd中运行:python te原创 2015-12-20 22:26:03 · 1003 阅读 · 0 评论 -
Python神图
偶尔从别的地方看来的,只有一张图,感觉还是不错的,讲的还是挺全的,python初学者可以看看原创 2015-11-16 23:40:31 · 1194 阅读 · 0 评论 -
pip安装报错'not a supported wheel on this platform'
这个错误很常见,解决方法是改名,首先要获得在你的机器的平台上的合法名称: import pip pip.pep425tags.get_supported() 结果可能如下: 上图的意思就是说对于python3.6(cp36)来说,合法的名字只能是这些,比如: ‘cp36_cp36m_macosx_10_12_x86_64.whl’ ‘cp36_cp36m_maco原创 2017-10-25 23:29:18 · 1655 阅读 · 0 评论