Python 中强制缩进,, IndentationError: unexpected indent 缩进错误
这类错误很是常见,通常都是因为tab在不一样的平台上占用长度不一样致使,有些事程序员本身直接使用空格或其余来顶替tab。
解决办法很是简单,在所在平台上使用标准的tab进行缩进,就OK了。
编码错误,能够经过指定字符集解决 : encoding = “utf-8”
文件不可读,多是文件打开模式不对
局部做用域引用错误,可能缘由是 a变量为局部变量,未定义,不可修改
缺乏wx模块,缺啥装啥...html
sudo apt-get install python-wxtools
无法解析Python的头文件,解决方法:python
#先更新下源 sudo apt-get update #安装python-dev sudo apt-get install python-dev
python版本问题,不兼容,python3版本的换成range()函数就好了。程序员
解决方法:import timeflask
解决方法: from datetime import datetimesegmentfault
编码错误,基本是由中文引发的(中文路径、中文编码)app
缘由之一:当前路径名取了一个“ flask ”(当前文件名为flask)ide
Python3之后删除了has_key()方法!python2中能够。函数
解决方法:ui
if adict.has_key(key1): #改成 if key1 in adict:
map(function, iterable, ......)
Python 2.x 返回列表。编码
Python 3.x 返回迭代器。 只用将iterator 转换成 list 便可, 好比 list(map())
不能直接用int进行迭代
参考:https://segmentfault.com/q/1010000011234516,https://blog.csdn.net/yeizisn/article/details/53069775
报错代码:
list(map(frozenset, C1)) # 对每个元素 frozenset
问题在于:map这个函数的第二个参数要求能够迭代,C1里面的元素也得能够迭代。C1这个列表的每一个元素都是int,不可迭代,应该也是list才行;
http://www.runoob.com/python/python-func-map.html
解决代码:
C1.append([item]) #注意!!!item必定要加中括号,表明列表; 否则C1的元素是int,int是不可迭代的;执行list(map(frozenset, C1))会报错。
通常是参数的名称出现错误
错误出如今tkinter,为combobox添加选择事件
解决方法: 为函数添加参数*args
def select_algorithm(*args): #为函数添加参数*args global algo_selected algo_selected = algorithm_combobox.get() print(algo_selected)
缘由:python2有cPickle,可是在python3下,是没有cPickle的;
解决办法:将cPickle改成pickle便可
# argument 1 是指第一个参数 # 它的意思是第一个参数不该该是str,因此查一下这个函数的几个参数就行了 # 实际上是由于缺乏第一个参数 filename = QFileDialog.getOpenFileName(None, 'Open File','/') #第三个参数是默认打开路径,若是为空则打开当前路径
# from sklearn.lda import LDA 这是sklearn0.16的写法,以后的版本没有了lda 能够查一下sklearn各个版本的API # 参考连接: https://stackoverflow.com/questions/46775155/no-module-named-sklearn-lda # 为了代码的最少更改,能够以下解决: from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA
# 参考连接:http://leonzhan.iteye.com/blog/1720315 # 上述连接中说:这种错误是指一个tuple值赋给一个tuple变量时,变量个数不够形成的。如: # a, b = (1, 2, 3) # 个人错误代码: X, y = FileOpener.load_file(filename) # 这里的问题是: load_file返回了三个值 X, y, dataset, 因此再加一个值来接收,改成以下代码: X, y,dataset = FileOpener.load_file(filename)
未完待续...................................................................................................................................................................................................................................................................................