===== 寫在前面 =====
這篇分享並
無法保證所有的內容都是正確無誤的,是有鑑於自己在使用他人的工具時,一直無法順利執行,因此將解決問題的過程都放上來,希望能夠藉由分享來幫助其他人能夠enjoy在programming的世界!
===== 如為新手,請參閱Python Tutorial =====
- Python的網頁上,有最新版本的Python Tutorial。
- 另有中文版的Python Tutorial(教學文件),但版本為2.0 (2000/10/16修定)
- 如須下載Python,請至Python的網頁上免費下載。
python-3.0→使用libsvm時,少了一個Queue的modul。
python-2.6.1→可正常使用libsvm。
===== 使用狀況與心得(OS: windows) =====
- 正常使用方式 (不過不曉得為什麼,無法使用libsvm內的.py檔)
- 開啟命令提示字元。
- 利用cd與cd..到安裝python的資料夾。(如何使用命令提示字元,請參閱連結)
- 以dir查看,應該會有python.exe的檔案。
- 直接鍵入python,就可啟動python直譯器。
- 或者以滑鼠直接點擊python.exe,取代1~4的步驟。
- 如果要離開,同時按住control和z(只適用於windows),則螢幕上會出現^Z的字樣,再按enter即可跳離python直譯器。
- 更多新手實做(OS:windows)
- 我們先以checkdata.py檔案來測試,是否可順利使用。
- 上述步驟做到2,並且將要用到的所有檔案放入同一個資料夾。
- 不用進入python直譯器,以下兩種輸入方式,我都可以正常執行。
(使用者輸入) checkdata.py data.scale
(電腦輸出) No error.
(使用者輸入) python checkdata.py data.scale
(電腦輸出) No error.
- 如果作業系統為windows的使用者,在有print的程式碼上有出現錯誤的話,請加上()
- 原程式:print usage
- 更改為: print(usage)
總之將所有想要print的東西全部括號起來就是了
- 另外我自己有發生的一個錯誤為grid.py檔的
begin_level = round(max(map(lambda (x):x[2],db))) - 3
不確定一下改法是否正確,但編譯至少合法了。
- 原程式:begin_level = round(max(map(lambda (x):x[2],db))) - 3
- 更改為:begin_level = round(max(map(lambda x :x[2],db))) - 3
===== Python資訊分享 =====
[Python程式整合方面]Python為百分百的物件導向程式語言,可以搭配其他物件導向的系統程式語言一起使用(ex: C++ and Java),亦可以將C++和Java所編寫出的類別當作子類別來使用。藉由採用Python與C語言整合用的API,Python程式可以外加C/C++語言編寫的元件來擴充功能;另一方面,Python程式也可以內嵌到C/C++的程式裡。
Ref:《Python 入門》author: Mark lutz
[Python開發標準]Python以ANSI C的標準研發而成,具有可移植性(portable)。Python編寫的程式碼都可以自動編譯成具移植能力的位元碼(bytecode),可執行於不同作業平台(ex: Unix, Linux, MS-DOS, MS-windows 95/98/NT, Maccintosh, Amiga, Be-OS, OS/2, VMS and QNX )。Python符合POSIX的標準,支援一般作業系統所擁有的工具項目,如環境變數(environment variable)、檔案、socket、管道(pipe)、執行緒(thread)和正規運算式(regular expression)等等。
Ref:《Python 入門》author: Mark lutz