It all returns to nothing.

SICP回顾:cons函数、使用过程定义数据结构(上)

最近在使用python完成SICP2.2部分的一些经典例题,因为在我看来使用不同的语言来完成一件相同的事情能够加深印象和理解。用python实现例题的部分也会再写成一篇文章,但是这里遇到了一些问题,需要先记录一下。 首先是我对2.2节的感悟:构造一个复杂的东西,是需要许多模块进行组合的。这些模块也可以进行拆分,但是拆分到最底层的某些部分,这些部分的构造一定是简单又正确的。(看上去是一句废话,但是要把一个东西构造成简单但是又正确的,还是比较困难的一件事情) 2.2节的最简单又正确的构造就是三个基本的函数cons、car...

SICP回顾:cons函数、使用过程定义数据结构(上)

关于opml,使用lxml解析opml文件小记

首先来介绍一下什么是opml文件。 了解到这种文件主要是因为eaf-rss-reader的一个issue。一般来说像feedly,Inoreader这种的rss-reader是提供了引入/导出opml文件的功能的。opml文件将你的feed链接都收集到一个文件里,方便将所有的feed订阅转移到其他的阅读器上。 opml文件其实就是一个xml文件,使用能够解析xml文件的一些库就能将它解析了。但是比较怪的是,feedly网站上居然无法解析由Inoreader生成的xml文件… 对python来说,解析xml通常会用xml库或者lxm...

关于opml,使用lxml解析opml文件小记

树的映射以及map函数

这篇文章是sicp2.2节内容的笔记,主要记录一下里面提到的scale-tree这个函数。 ```(scale-tree tree factor)```以一棵树和一个因子作为参数,将树上的所有节点的值都乘上因子。 首先提供了一个朴素版本的scale-tree,就是递归左右子树,检查当前节点是否属于叶子节点。如果是,那么就乘上因子;如果不是,那么就继续左右递归。 1

树的映射以及map函数

如何让Vue.js能够调用Python函数?

这个问题主要来自我今年的暑期项目,eaf-rss-reader。因为前端是使用vue.js,数据处理部分是python,涉及到了文件读写,但是出于安全考虑,vue.js以及js是不直接提供本地文件读写的,在eaf里提供了一种通过 QWebChannel 来实现vue.js调用python函数的方法。 首先,在Vue组件的created()函数中写下如下代码,表示绑定Python端的QWebChannel对象pyobject到JavaScript端的window.pyobj...

如何让Vue.js能够调用Python函数?