編程

算法練習 力扣 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里正常使用了.