一Process对象的join方法在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程的任务分两种情况情况一:在主进程的任务与子进程的任务彼此独立的情况下,主进程的任务先执行完毕后,主进程还需要等待子进程执行完毕,然后统一回收资源。这种是没有join方法情况二:如果主进程的任务在执行到某一个阶段时,需要等待子进程执行完毕后才能继续执行,就需要有一种机制能够让主进程检测子进程是否运行完毕,在子进程执行完毕后才继续执行,否
系统 2019-09-27 17:52:51 2006
背景介绍从学sklearn时,除了算法的坎要过,还得学习matplotlib可视化,对我的实践应用而言,可视化更重要一些,然而matplotlib的易用性和美观性确实不敢恭维。陆续使用过plotly、seaborn,最终定格在了Bokeh,因为它可以与Flask完美的结合,数据看板的开发难度降低了很多。前阵子看到这个库可以较为便捷的实现数据探索,今天得空打算学习一下。原本访问的是英文文档,结果发现已经有人在做汉化,虽然看起来也像是谷歌翻译的,本着拿来主义,
系统 2019-09-27 17:52:35 2006
Python中的列表基于PyListObject实现,列表支持元素的插入、删除、更新操作,因此PyListObject是一个变长对象(列表的长度随着元素的增加和删除而变长和变短),同时它还是一个可变对象(列表中的元素根据列表的操作而发生变化,内存大小动态的变化),PyListObject的定义:typedefstruct{#列表对象引用计数intob_refcnt;#列表类型对象struct_typeobject*ob_type;#列表元素的长度intob
系统 2019-09-27 17:52:11 2006
通过纯Python完成股票回测框架的搭建。什么是回测框架?无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。代码地址在最后。本项目并不是一个已完善的项目,还在不断的完善。回测框架回测框架应该至少包含两个部分,回测类,交易类.回
系统 2019-09-27 17:51:37 2006
PySnooper在GitHub上自嘲是一个“乞丐版”调试工具(poorman'sdebugger)。一般情况下,在编写Python代码时,如果想弄清楚为什么Python代码没有按照预期执行、哪些代码在运行哪些没在运行、局部变量又是什么,我们会使用包含断点和观察模式等功能的调试器,或者直接使用print语句打印出来。但上面的方法都比较麻烦,例如使用调试器需要进行繁琐的设置,使用print打印也要很仔细。与它们相比,使用PySnooper只需为要调试的函数添
系统 2019-09-27 17:50:04 2006
通常,大多数应用程序通过保持HTML简单来解决大多数浏览器问题�D或者说,根据最低共同特性来编写。然而,即便如此,也仍然存在字体和布局的问题,发行新浏览器和升级现有浏览器时,也免不了测试应用程序的痛苦。替代方案�D只支持一种浏览器�D通常不是一种用户友好的解决方案。明显的解决方案是在应用程序中嵌入自己的表现HTML的窗口构件。当然,从头开始编写这样的窗口构件工作量很大,因此,求助于预先封装的解决方案好象是合理的。商界有许多选择及几个开放源码软件包。本文将向
系统 2019-09-27 17:49:37 2006
前面介绍过vSQLAlchemy中的Engine和Connection,这两个对象用在rowSQL(原生的sql语句)上操作,而ORM(ObjectRelationalMapper)则是一种用面向对象的思维来操作表数据的技术。所谓ORM就是Python对象到数据表的一种映射关系。以前SQLAlchemy是怎么把Python对象和数据库中表里面的每条记录进行映射的呢?通过一个mapping函数先来看个例子:fromsqlalchemyimportTable,
系统 2019-09-27 17:48:55 2006
Pythonlist内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。1)排序基础简单的升序排序是非常容易的。只需要调用sorted()方法。它返回一个新的list,新的list的元素基于小于运算符(__lt__)来排序。>>>sorted([5,2,3,1,4])[1,2,3,4,5]你也可以使用list.sort()方法来排序,此时list本身将被修改。通常此方法不如sorted()方便,
系统 2019-09-27 17:47:37 2006
本文我们详细地介绍下两个模块关于生成随机序列的其他使用方法。随机数参与的应用场景大家一定不会陌生,比如密码加盐时会在原密码上关联一串随机数,蒙特卡洛算法会通过随机数采样等等。Python内置的random模块提供了生成随机数的方法,使用这些方法时需要导入random模块。importrandom下面介绍下Python内置的random模块的几种生成随机数的方法。1、random.random()随机生成0到1之间的浮点数[0.0,1.0)。注意的是返回的随
系统 2019-09-27 17:46:55 2006
如果不用“with”,那么Python会在何时关闭文件呢?答案是:视情况而定。Python程序员最初学到的东西里有一点就是可以通过迭代法很容易地遍历一个打开文件的全文:f=open('/etc/passwd')forlineinf:print(line)注意上面的代码具有可行性,因为我们的文件对象“f”是一个迭代器。换句话说,“f“知道在一个循环或者任何其他的迭代上下文中做什么,比如像列表解析。我的Python课堂上的大多数学生都具有其他编程语言背景,在使
系统 2019-09-27 17:45:26 2006