TypeError: ‘str’ does not support the buffer interface

下面代码在Python 2.7.6运行正常,在Python 3.4.3运行出错,OS为Win8.1,报错信息为:’str’ does not support the buffer interface. Stack Overflow相关问题

with open("test.txt") as fp:
    line = fp.readline()
with open("test.out", 'wb') as fp:
    fp.write(line)

继续阅读TypeError: ‘str’ does not support the buffer interface

C++实现简单KNN算法

基本思路(引用自机器学习实战p19)

  1. 计算已知类别数据集中的点与当前点之间的距离;
  2. 按照距离递增次序排序;
  3. 选取与当前点距离最小的k个点;
  4. 确定前k个点所在类别的出现频率;
  5. 返回前k个点出现频率最高的类别作为当前点的预测分类。

继续阅读C++实现简单KNN算法

LeetCode 222 Count Complete Tree Nodes 非递归和递归解法

https://leetcode.com/problems/count-complete-tree-nodes/ 题目描述:求完全树的所有节点个数。

非递归方法,116ms. 比较左右节点的树高,如果左树高,则结果加上右树的节点,指针进入左孩子; 如果左右树高相同,则结果加上左树的节点,指针进入由孩子。

继续阅读LeetCode 222 Count Complete Tree Nodes 非递归和递归解法

Python 2.7.6 64位windows 8.1系统安装numpy, scripy和scikit-learn

环境

Python 2.7.6, 64bit windows 8.1.

安装步骤

  1. 安装pip (pip安装好后会在Python27\下生成Script文件夹,其中包含pip.exe, eazy_install.exe等文件,然后将路径Python27\Script\添加于系统变量变量Path路径中。2.7.9和3.4.3以后在Python\Script\文件夹下自带pip, eazy_install).
  2. 这里分别找到numpy-1.9.2+mkl-cp27-none-win_amd64.whl, scipy-0.15.1-cp27-none-win_amd64.whl, scikit_learn-0.16.1-cp27-none-win_amd64.whl, 使用命令pip install numpy-1.9.2+mkl-cp27-none-win_amd64.whl按顺序安装3个包。(版本可能有变化)
  3. 若遇到UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordinal not in range(128)错误,打开Python27\Lib下的 mimetypes.py文件,在256行的default_encoding = sys.getdefaultencoding()前面添加三行:

继续阅读Python 2.7.6 64位windows 8.1系统安装numpy, scripy和scikit-learn