Pyslvs 編譯進度 - 演算法:
- 編譯
Pyslvs 編譯進度 - 演算法
編譯
倉儲:
https://github.com/40323230/pyslvs_generate-1
將演算法的原始碼統整,並為其 Makefile 添加 clean 指令。
接著就 test.py 範例檔研究了一下,將原本回傳的字串全部改成 float 型態的 list,並且調整了一些顯示方式。
將結果轉換為浮點數:
a = [k for k in map(lambda x: [float(i) for i in x.split(',')[1::]],[e for e in time_and_fitness.split(';')[0:-1]])] b = [float(e) for e in fitnessParameter.split(',')] print(a) print(b)
X 和 Y 座標的部份之後再做處理,可以確保的是能夠從整個字串中取回數值,回傳至 Pyslvs 時再做篩選。
目前在 14.04 和 16.04 的 Python 3.4 和 3.5 測試都運作良好,Windows 還沒試過。
Linux 編譯流程:
進入 Tinycad_package
目錄下。
1 2 | $sudo pip3 install Cython
$make
|
在該目錄下會編譯出可用的動態連結庫,將其移出就能讓 Python 程式碼使用。
接著就要讓 Pyslvs 使用演算法解題。
目前測試解題速度平均 25 秒左右,舊電腦 35 秒左右。
會試圖研究 Windows 版的編譯方式,最後會像 Python Solvespace 的 kernel 一樣偵測平台和 Python 版本作切換。
Comments
comments powered by Disqus