简单使用最开始,我们用最短的代码体验一下logging的基本功能。importlogginglogger=logging.getLogger()logging.basicConfig()logger.setLevel('DEBUG')logger.debug('logsomething')#输出out>>DEBG:root:logsomething第一步,通过logging.getLogger函数,获取一个loger对象,但这个对象暂时是无法使用的。第二步
系统 2019-09-27 17:52:26 1988
通过纯Python完成股票回测框架的搭建。什么是回测框架?无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。代码地址在最后。本项目并不是一个已完善的项目,还在不断的完善。回测框架回测框架应该至少包含两个部分,回测类,交易类.回
系统 2019-09-27 17:51:37 1988
1、str.split不支持正则及多个切割符号,不感知空格的数量,比如用空格切割,会出现下面情况。>>>s1="aabbcc">>>s1.split('')['aa','bb','','cc']因此split只适合简单的字符分割2、re.split,支持正则及多个字符切割>>>printlineabcaa;bb,cc|dd(xx).xxx12.12'xxxx按空格切>>>re.split(r'',line)['abc','aa;bb,cc','|','d
系统 2019-09-27 17:50:51 1988
PIL提供了通用的图像处理功能,以及大量的基本图像操作,如图像缩放、裁剪、旋转、颜色转换等。Matplotlib提供了强大的绘图功能,其下的pylab/pyplot接口包含很多方便用户创建图像的函数。为了观察和进一步处理图像数据,首先需要加载图像文件,并且为了查看图像数据,我们需要将其绘制出来。fromPILimportImageimportmatplotlib.pyplotaspltimportnumpyasnp#加载图像img=Image.open("
系统 2019-09-27 17:50:40 1988
通常,大多数应用程序通过保持HTML简单来解决大多数浏览器问题�D或者说,根据最低共同特性来编写。然而,即便如此,也仍然存在字体和布局的问题,发行新浏览器和升级现有浏览器时,也免不了测试应用程序的痛苦。替代方案�D只支持一种浏览器�D通常不是一种用户友好的解决方案。明显的解决方案是在应用程序中嵌入自己的表现HTML的窗口构件。当然,从头开始编写这样的窗口构件工作量很大,因此,求助于预先封装的解决方案好象是合理的。商界有许多选择及几个开放源码软件包。本文将向
系统 2019-09-27 17:49:37 1988
1.pyqt4写的界面find_ui.py#-*-coding:utf-8-*-fromPyQt4importQtCore,QtGuitry:_fromUtf8=QtCore.QString.fromUtf8exceptAttributeError:def_fromUtf8(s):returnstry:_encoding=QtGui.QApplication.UnicodeUTF8def_translate(context,text,disambig):r
系统 2019-09-27 17:48:21 1988
正则表达式是Python程序设计中非常实用的功能,本文就常用的正则表达式做一汇总,供大家参考之用。具体如下:一、字符串替换1.替换所有匹配的子串用newstring替换subject中所有与正则表达式regex匹配的子串result,number=re.subn(regex,newstring,subject)2.替换所有匹配的子串(使用正则表达式对象)reobj=re.compile(regex)result,number=reobj.subn(news
系统 2019-09-27 17:46:40 1988
SessionMiddleware激活后,每个传给视图(view)函数的第一个参数``HttpRequest``对象都有一个session属性,这是一个字典型的对象。你可以象用普通字典一样来用它。例如,在视图(view)中你可以这样用:#Setasessionvalue:request.session["fav_color"]="blue"#Getasessionvalue--thiscouldbecalledinadifferentview,#orman
系统 2019-09-27 17:38:45 1988
面向对象的编程语言在写大型程序的的时候,往往比面向过程的语言用起来更方便,安全。其中原因之一在于:类机制。类,对众多的数据进行分类,封装,让一个数据对象成为一个完整的个体,贴近现实生活,高度抽象化。但是,python对类的封装并不好,因为所有的属性和方法都是公开的,你可以随意访问或者写入,你可以在类的外部对类的属性进行修改,甚至添加属性。这的确让人感到不安。下面就来总结一下学习后的解决方案。1,使用2个下划线前缀隐藏属性或者方法。__xxx#!/usr/b
系统 2019-09-27 17:38:12 1988
set在python里是什么意思?set是一组数,无序,内容又不能重复,通过调用set()方法创建:>>>s=set(['A','B','C'])对于访问一个set的意义就仅仅在于查看某个元素是否在这个集合里面,注意大小写敏感:>>>print'A'insTrue>>>print'D'insFalse也通过for来遍历:s=set([('Adam',95),('Lisa',85),('Bart',59)])forxins:printx[0],':',x[1
系统 2019-09-27 17:38:10 1988