对于这段时间遇到的问题,在多次感到记忆力无能时,觉得很有必要记下来!
1、UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
可以试着在导入sys模块
<span style="font-size:12px;">import sys
reload(sys)
sys.setdefaultencoding('utf-8')</span>
或者写入时用 decode(‘utf-8’)
2、IOError: File not open for reading
今天在操作一个字符串时遇到的,当时是将一个定义的变量转换成字符串想进行操作,就出现了这个错误。
这句话的意思是:文件未开放阅读,所以给文件的属性加一个‘读’就可以了。
<span style="font-size:14px;">f=open('ypbz.txt','a')
#这是我自己的,将‘写入’模式改为了‘读写’模式
f=open('ypbz.txt','a+')</span>
3、SyntaxError: Non-ASCII character '\xe5' in file
查了下说Python的默认编码文件是用的ASCII码,将文件存成了UTF-8也没用,解决办法很简单
文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。
(注意不要拼错,我就是因为拼错成conding出的问题,找到方法时自己还纳闷了半天)
4、httplib.IncompleteRead: IncompleteRead(140 bytes read)
在网上查的,搜到两个回答:
(1)典型的一个缓冲区的尺寸。实际上IncompleteRead是python原生库httplib的异常。HTTP通道返回0字节,或者返回一定字节后卡住太正常了。如果返回数据的可靠性很重要,请注意设置合理的超时并捕获相关的错误,如有必要甚至可以考虑手工验证HTTP头数据的Content-Length字段。
(2)可能是chunked编码不完整导致的。详细请看这里:http://blog.csdn.net/wangzuxi/article/details/40377467
其实我再下一次运行时就没事了。。。
5、IndexError: list index out of range
表示列表索引范围越界了,所以在对该列表操作之前要先 len() 一下,再对列表进行处理。
6、socket.error: [Errno 10054]
具体原因是大量访问,使网站以为是攻击行为,所以远程主机重置了该链接。
我的解决方法是:用了sleep()延时。
7、注册码问题
这个是编辑器最近常出现的的问题:
This license is being used elsewhere on the network by 192.168.1.98 (192.168.1.98).
Only one active computer at a time can use the license.
Would you like to re-activate this computer?
Click Yes to re-activate, or No to shutdown PyCharm
解决方法是换一个注册码在窗口 help>>Register 中