今天按照libsvm官方指導手冊 使用libsvm 軟體包。
本來應該按照指導,進入tools目錄,然後執行命令python easy.py svmguide1 svmguide1.t
,可是我的訓練檔案和測試檔案svmguide1和svmguide1.t都不在tools那個目錄下。
懶得切換工作目錄,於是很自然,我執行命令python libsvm-3.21/tools/easy.py svmguide1 svmguide1.t
,可是報錯
traceback (most recent call last):file 「libsvm-3.21/tools/easy.py」, line 28, in
assert os.path.exists(svmscale_exe),」svm-scale executable not found」
assertionerror: svm-scale executable not found
python 獲取當前指令碼檔案路徑目錄
# -*- coding: cp936 -*-
import sys,os
#獲取指令碼檔案的當前路徑
defcur_file_dir
():#獲取指令碼路徑
path = sys.path[0]
#判斷為指令碼檔案還是py2exe編譯後的檔案,如果是指令碼檔案,則返回的是指令碼的目錄,如果是py2exe編譯後的檔案,則返回的是編譯後的檔案路徑
if os.path.isdir(path):
return path
elif os.path.isfile(path):
return os.path.dirname(path)
然後,我把easy.py
指令碼改為
path = sys.path[0]
if os.path.isfile(path):
path = os.path.dirname(path)
print(path)
pathdir = path
is_win32 = (sys.platform == 'win32')
ifnot is_win32:
svmscale_exe = pathdir + "/../svm-scale"
svmtrain_exe = pathdir + "/../svm-train"
svmpredict_exe = pathdir + "/../svm-predict"
grid_py = pathdir + "/grid.py"
gnuplot_exe = "/usr/bin/gnuplot"
現在執行python libsvm-3.21/tools/easy.py svmguide1 svmguide1.t
,ok一切正常。 用python 來獲取當前電腦及python的資訊
coding utf 8 執行當前指令碼來獲取當前電腦及python的配置資訊。import sys,platform 先看python。a sys.version info print 當前python版本號是.format a a ret 當前作業系統 plat form platform.pl...
本地Python執行遠端伺服器Python指令碼
情景 區域網內一台pc或伺服器 windows或linux 上有一python指令碼,如何執行它?常用的兩種 遠端桌面和xshell遠端連線 那假如想要不通過以上兩種方式的前提下執行它,可行麼?怎麼辦?答案是肯定的 coding utf 8 author lihaizhen date descrip...
如何在LINUX UNIX上執行PYTHON程式
編寫python 程式的方法與 shell 指令碼類似。例如,要編輯乙個名為 try python 的python 程式檔案,輸入如下命令。pico try python 下面輸入一段簡單的 python 來檢查它是否工作。usr bin env python print 2 2 第一行告訴 she...