编程

算法练习 力扣 150. Evaluate Reverse Polish Notation

问题总结 这题比较简单,如果学过computer architecture,这个Reverse Polish Notation (RPN)基本就是个stack machine。很像汇编语言。用stack就可以解决。 坑 除法要求 that division between two integers should truncate toward zero. 测试数据里面有负数, python里面整数除法结果如果是小数,约成整数后是往小的方向约的。比如-0.4会变成-1,题目要求往0约,也就是-0.4变成0。用int(a/b)可解决。一个冷门知识。 Python解法

安装IBKR python API

到IB官网下载最新API,选Software: TWS API,然后”I Agree” License aggreement。然后选平台,比如TWS API Latest for Mac / Unix。 cd 到下载地址。 根据README.md里说的 具体版本可能有点不一样。我安装的时候README.md里的版本有点过时,不是下载的现有版本。 安装完成后就可以读User’s Guide了。

MySQL 笔记

用mysql client连接MySQL server 创建新用户 create a new user 创建新数据库 create new database 赋予用户使用权利 Grant privileges to a user Show users 参考资料 MySQL功能非常齐全,每个命令都有很多细节,本文只收集一下基本用法,更多可以看这个网页和官方文档。

Python/Pandas实战: 处理IBKR Statement

Python/Pandas实战: 处理盈透Statement

Pandas是一个非常强大的数据分析方面的Python package. 如果是做Machine Learning或者数据分析, 掌握Pandas很省去很多麻烦. 许多Machine Learning前期的数据处理也是用Pandas做得. IBKR(Interactive Brokers, 有时简称IB, 中文叫盈透证券)是美国老牌券商, 也是我的主要使用的券商. 又到了辞旧迎新的时候, 需要看看2020投资收益, 于是趁新年长周末写点小程序做点数据分析. 而这正好覆盖了Pandas的各种常用functions. 下载IB Statement IB Statement提供多种方式下载, 比如html, pdf, csv. 用作数据处理选csv. 内容大概长这样 Statement这个column是内容, 里面有很多项, 而这里我只看“Realized & Unrealized Performance Summary”, 然后相同的第一列后面的列数都是一样的. 上图是Jupyter Lab的显示有问题. 因为文件其实可以看成很多CSV files连在一起, 而第一列可以看成是小csv的文件名. 然后第二列是Header或者Data. Header那行就是告诉你后面的Data行里每一列都是什么….
Read more

在Apache2里怎样redirect URL? | How to redirect URL using Apache2?

在Apache2里怎样redirect URL?

原来以为这个问题很简单, Google了一下发现网上的答案五花八门, 而且版本很混乱 有httpd的, ASP.net, url redirect的, url rewrite的. 经过多次尝试各种组合, 终于试出了一个可行的解决方案, 值得在此记录一下, 相信一定能帮到有类似需求的人. 本文例子为Ubuntu + apache2, 2020年, 2021年左右. 普通URL redirect到另一个网站 编辑/etc/apache2/sites-available里面的一个site, 比如mysite, 需要redirect到anothersite.com, 那么可以加上一行Redirect 修改完成后保存, 重启apache2 Redirect到一个子目录 上面的方法可以redirect到不同的URL, 但是如果想redirect mysite.com到mysite.com/blog就不行. 我试了一下, 如果像上面那样改动, 在浏览器输入mysite.com就会被不停的改成mysite.com/blog/blog/blog… 无限循环. 很明显, 改写是recursive的. 那么就不要用Redirect而是用RedirectMatch 我也不太清楚apache2配置的语法细节, 但是以上是试过可行的方法. 最后一样是重启apache2让配置生效

怎样给wordpress网站创建XML sitemap?

how to create a wordpress sitemap

XML sitemap是什么? 简单来说, XML sitemap是一个网站包含网页的列表. 它的目的是让搜索引擎, 主要是Google的爬虫能发现这个站点并把站点内的网页添加到搜索索引里. 一个新建的网站几乎是网络里的孤岛, 没有任何其他网站指向它, 所以如果想被Google收录并索引的话, sitemap是很重要的. 怎样创建一个XML sitemap? 如果使用Wordpress的话, 可以使用Yoast SEO插件生成一个XML sitemap. 安装Yoast SEO插件 在Wordpress管理后台选择Plugins, 然后Add new 搜索Yoast SEO, 然后点击Yoast SEO结果上的Install Now, 完成后, 点击Active, 如下图 用Yoast SEO生成XML sitemap 在Wordpress后台选择SEO, 然后general 选择Features tab, 确保XML sitemaps是ON的, 然后Save…
Read more

怎样解决PHP找不到mb_convert_encoding函数? | How to solve the problem of php can’t find mb_convert_encoding function?

问题描述 本来想解决Wordpress不支持中文URL问题的. 网上大部分的帖子都是大同小异, 比如知乎这篇. 简单来说就是在wp-includes/class-wp.php里把url的encoding从UTF-8换成GBK. 我照着修改后并不行. 先遇到PHP找不到mb_convert_encoding这个函数, 后来解决了. 虽然最后中文URL还是没搞定, 这里记录一下怎么解决mb_convert_encoding找不到的问题的解决方法. PHP 里找不到 mb_convert_encoding 函数的解决方法 首先安装 php-mbstring, 比如Ubuntu里 然后重启web server, 比如 Apache2 验证 mb_convert_encoding 安装成功 用PHP的REPL 可见 mb_convert_encoding 函数可以在PHP里正常使用了.