在享受了上学期的AI课程后,我开始玩scikit-learn。我之前没有使用python的经验(我们使用的是WEKA),所以我用一个包含所有包的虚拟环境来设置python3。我已经激活了虚拟环境,并尝试通过python3 <filename.py>
从sklearn导入svm,数据集从numpy导入genfromext,保存导入系统
def main():
digits = datasets.load_digits()
clf = svm.SVC(gamma=0.001, C=100.)
clf.fit(digits.data[:-1], digits.target[:-1])
SVC(C=100.0, cache_size=200, class_weight=None, coef0=0.0, degree=3,
gamma=0.001, kernel='rbf', max_iter=-1, probability=False,
random_state=None, shrinking=True, tol=0.001, verbose=False)
print(clf.predict(digits.data[-1]))
sys.stdout.flush()
不输出任何内容到term (MAC OS x bash终端)。所以试着运行这段代码
def main():
print("hi", end='n', file=sys.stdout, flush=True)
也不打印任何内容。我看了打印文档,问了一个朋友(他只使用2.7)没有弄清楚这个
你的main()函数被调用了吗?试着把它添加到模块的末尾。
if __name__=="__main__":
main()
您是否真的运行了 main()
函数?在上面的代码中,你定义了一个叫做main()
的过程,但是它必须被称为才能对它做一些事情。因为您是在终端上工作,所以只需键入main()
并按[ENTER]
。
如果你是从一个文件中运行程序,那么@AndrewJohnson的答案是正确的。
我对几种类型的python脚本都有同样的问题。只是通过检查缩进来纠正它。正确的缩进。