栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position 1101-1121: ordinal not in rang

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UnicodeEncodeError: ‘ascii‘ codec can‘t encode characters in position 1101-1121: ordinal not in rang

1、问题出处

ubuntu 18.04
ros melodic
默认python版本:python2.7
在启动rviz仿真中报错

标志特征:UnicodeEncodeError: 'ascii' codec can't encode characters in position 1101-1121: ordinal not in rang
通过检索发现这个问题是因为python编码问题,解决方案是将python编码格式改为全局UTF-8

2、解决方案(设置python全局编码格式) 2.1 首先查看python版本

命令行中输入:python

这里我的默认python版本是2.7

2.2 进入python包位置
cd /usr/lib/python2.7  

注意我的默认是python2.7所以我进入python2.7,假设你的默认版本是python3.8你需要执行

cd /usr/lib/python3.8
2.3 激活权限

我们需要更改sitecustomize.py文件,但是他的权限设置一般那为只读。
终端执行

sudo chmod 777 sitecustomize.py

输入密码后可以从右键属性/权限看到已经是读写了

2.4 全局更改编码格式

使用文本编辑器打开/usr/lib下的sitecustomize.py文件
并加入如下代码:

#coding=utf-8

import sys

reload(sys)

sys.setdefaultencoding('utf8')

如图:

保存退出

3 重新执行,报错解除
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/738949.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号