Ubuntu下Python无法识别中文
在NLP的相关任务中,应用python处理中文是很常见的。在这个过程中,由于编码方式的不一致,可能会出现以下两种错误:
1)SyntaxError: Non-ASCII character in file ‘文件名’
2)UnicodeDecodeError: 'ascii' codec can't decode
解决方法是:更改Python的编码方式为utf8模式,分为单文档内的临时更改,以及全局更改两种方式
1.单文档内临时更改:在文档的开始处第一行(前面无任何内容),加入一行代码: # coding: utf8
或者在文档内添加以下代码,不要求在第一行,但也一般在文档开始的部分,添加代码: import sys reload(sys) sys.setdefaultencoding('utf8')
2.全局更改在/usr/lib/python2.7目录下的sitecustomize.py文件内加入上述代码 # coding: utf8 import sys reload(sys) sys.setdefaultencoding('utf8')最后,中文标点的处理需要格外注意(可以按下面形式处理): endSign="!。" endSign=endSign.decode('utf-8')这两行代码,第一行是列举的中文标点,第二行是编码为utf8,第二行不能遗漏,否则可能出现上面第二个UnicodeDecodeError:错误
Ubuntu下Python无法识别中文的更多相关文章
- ubuntu下python 2.7与python 3.X的转换
ubuntu下python 2.7与python 3.X的转换 由于ubuntu本身自带python 2.7,而python 3.X与2.7有很多不同,所以在使用python 3.X时会带来诸多不便. ...
- ubuntu下python flask环境搭建
ubuntu下python flask环境搭建 1. 安装pip sudo apt-get install python-dev pyhton-pip 2. 安装virtualenv sudo apt ...
- 搜狗输入法在Ubuntu下突然不能输入中文
使用搜狗输入法在Ubuntu下突然不能输入中文,这种情况出现多次,先找到一个快捷的解决方案: 首先要知道遇到这种情况的很大可能原因是bin目录里文件过多,系统加载不完全,你就算上面的脚本执行3次都不行 ...
- ubuntu 下python安装及hello world
//@desn:ubuntu 下python安装及hello world //@desn:码字不宜,转载请注明出处 //@author:张慧源 <turing_zhy@163.com> ...
- 解决Ubuntu下Chrome浏览器网页中文字体混乱
在Ubuntu下使用Chrome浏览器时碰到了网页中文字体混乱的现象: 黑体和楷体混杂,看起来非常不美观. 这是由于许多网页并没有指定字体,然后浏览器将调用系统默认字体配置. 首先,安装文泉驿字体: ...
- ubuntu 下python环境的切换使用
如何在Anaconda的python和系统自带的python之间切换 一般ubuntu下有三种python环境,1. 系统自带python2,3;在/usr/bin路径下:2. anaconda下安装 ...
- ubuntu下Python的安装和使用
版权声明 更新:2017-04-13-上午博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Python的开发环境. ...
- ubuntu 下解决sublime v3 中文输入法时 退格键删除不了拼音的问题
ubuntu下,sulime想要支持中文需要这样设置: 1.安装中文输入解决的github git clone https://github.com/lyfeyaj/sublime-text-imfi ...
- Ubuntu 下Python 环境问题
问题描述: 原先使用Anaconda环境,若卸载后仍不能恢复到系统默认的Python环境. 解决方案: shell 寻找缓存路径,python的扩展/home/tom/anaconda/bin/pyt ...
随机推荐
- asp.net5开发中DNX SDK版本的影响
某次asp.net5开发中遇到了一个很奇怪的问题,引用部分的nuget包没有显示任何错误,如下图: 但是编译时出现了几百个错误: 错误基本都是形如“CS0246 The type or namespa ...
- JavaFX--第2天-窗口基本的类
1 内部匿名类和Lambda表达式 2 Switching Scene 3 信息提示框 (Alert Boxes) 前情回顾: 前面的学习内容:关于JavaFX的基本概念,以及窗口所使用的类的一个介绍 ...
- babel7中 preset-env 完全使用
babel7中 preset-env 完全使用 const presets = [ ['@babel/env', { // chrome, opera, edge, firefox, safari, ...
- JQuery初识(二)
一丶链式编程 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...
- jQuery的parent和parents和closest区别
1.parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合.2.parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素).可以通过一个可选的表达式进行筛选.3.clo ...
- Thymeleaf的模板使用介绍
参考网址: https://blog.csdn.net/hry2015/article/details/73476973 先定义一个html文件, 如下: 文件路径: templates/templa ...
- LAMP Stack 5.7.16 (Ubuntu 16.04.1)
平台: Ubuntu 类型: 虚拟机镜像 软件包: apache2.4 mysql5.7 php7 phpmyadmin4.5 apache application server basic soft ...
- 关于VPS主机KVM/OPENVZ/CN2区别与含义
1.OPENVZ OpenVZ是基于Linux内核和作业系统的操作系统级虚拟化技术.OpenVZ允许物理服务器运行多个操作系统,被称虚拟专用服务器(VPS,Virtual Private Server ...
- 爬虫技术-httpClent+jsoup
技术:httpClent+jsoup 任务:利用httpClent爬去网站信息,在利用jsoup解析 方法说明: parseUrl(String url):传入相应的url返回该网页内容,网页必须是h ...
- linux 命令——38 cal (转)
cal命令可以用来显示公历(阳历)日历.公历是现在国际通用的历法,又称格列历,通称阳历.“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”. 1.命令格式: cal ...