百度自然语言处理报错:UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\U0001f602’ in posit
原因:ubuntu机器编码utf8,接口尝试用gbk解析,在对str转换格式时报错
解决:比如title变量.str(title.encode(“GBK”,’ignore’))
解决方案ObjectOfTypeXXisNotJSONSerializable
对象的部分字段不支持序列化.
01,
1 | print(json.dumps(obj.__dict__, indent=4, sort_keys=True, default=str)) |
02,
1 | def set_default(obj): |
03,
1 | result=eval(repr(results)) |
04,
1 | import json |
05,
1 | import json |
最终推荐方案:
1 | json.dumps([x.__dict__ for x in all_results], default=str) |
解决方案UnicodeEncodeError
又遇到报错:
UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\uff08’ in position 13: ordinal not in range(128)
这个问题遇到多次了了,但都是通过第一个方案解决了,但这次貌似不行了。最终采用了方案三,顺便整理下网上其他方案
第一种方案(90%情况下,大部分帖子都是这个)
一般报错到代码都是自己写到代码,代码上添加
1 | import sys |
第二种方案,引用到包出现错误(未解决我的问题,但有人提到过这种处理方案)
在python的lib\site-packages文件夹下新建一个sitecustomize.py
cat sitecustomize.py #添加如下内容,设置编码为utf8
1 | #encoding=utf8 |
参考:https://www.cnblogs.com/kevingrace/p/5893121.html
第三种方案
进入python终端,执行如下命令
import sys, codecs, locale; print str(sys.stdout.encoding);
是否时utf8(ubunut系统)
如果不是,比如我的是这个
‘ANSI_X3.4-1968’
则修改环境变量PYTHONIOENCODING为utf8
执行:export PYTHONIOENCODING=utf-8
解决方案ImportErrorlibta_lib
原始问题:
1 | >>> import talib |
附录:官方的安装方法
1 | pip install TA-Lib |
方案01,export
参考:https://github.com/mrjbq7/ta-lib/issues/6
1 | export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH |
方案02,源代码安装
参考:https://stackoverflow.com/questions/45406361/importerror-libta-lib-so-0-cannot-open-shared-object-file-no-such-file-or-dir
https://ideaorchard.wordpress.com/2015/01/16/installing-ta-lib-ubuntu/
1 | I had the same issue. See below for what I did to fix it. |
方案3,conda安装(这个一般比较好使)
1 | sudo chmod -R 777 anaconda3 |
方案4,conda 安装talib,冲突的numpy自动卸载
之后pip卸载numpy,再pip自动安装numpy,安装时指定版本==1.12.0
python绘制k线图(蜡烛图)报错 No module named ‘matplotlib.finance
使用python绘制蜡烛图报错:No module named ‘matplotlib.finance
部分版本移除了finance模块,需要独立安装
安装命令:pip install git+https://github.com/matplotlib/mpl_finance.git
其他参考:https://blog.csdn.net/u014281392/article/details/73611624
https://www.jb51.net/article/140799.htm
坑map函数不执行
常用series.map()函数,回头使用map(lamba x:func(x),listxx),容易忘记map是生成式,如果不调用next不会触发实际运行,所以需要联用list(map(xx,yy))才有意义。
坑文件读写方式和乱码问题
java中文件读写打开为“rw”,但python中“rw”并非有效配置,会报错
1 | ValueError: must have exactly one of create/read/write/append mode |
使用’r+’代替’rw’读写模式.
其次读写同一文件时,如果写入从文件开头覆盖式写入则需要按照如下方式
1 | content = ''.join(f.readlines()) |
python实战系列
python实战02异常报错
python实战04常见坑
python实战05文件路径(找不到文件)
python实战06多线程bug处理记录
python实战07调试pdb
python实战08多线程性能分析(装饰器和chromeTrace)
python实战10pytest测试和覆盖率