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

python错误合集

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

python错误合集

错误合集
  • 中文乱码问题
  • JSON异常

记录工作中遇到的python出错的问题,用于以后进行查错。

中文乱码问题

1.linux控制台print输出中文报错
报错代码:
UnicodeEncodeError: ‘latin-1’ codec can’t encode characters in position 0-1: ordinal not in range(256)
原因:有可能是linux的console输出编码问题
解决方法:

# -*- coding: utf-8 -*-
import io
import sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')

2.flask框架request获取http请求参数时,中文无法正常接收

// post请求
res = requests.post(url=url, params=data)
//flask框架接受数据代码
data = request.form.get("text")
data = request.args.get("text")

运行上述代码会出现中文编码问题:

//data:%7B%274401%27%3A+%27u897fu5b9d+u5565u65f6u5019u64ad%27%2C+%274402%27%3A+%27u611fu6069%27%2C+%274403%27%3A+%27u6211u6709u5757u6599u5b50u80fdu

原因:http将请求参数放到url中会进行url编码。
解决方法:将请求参数放到body中。代码如下:

//post请求代码
res = requests.post(url=url, data=data)
JSON异常

1.json.loads解析json生成dict报错

json = {'0': '想买一个','1': '我的', '3':'骗子主播,想上当的可以买'}
dict1 = json.loads(josn)

报错代码:
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
原因:上述json是引号,json严格要求为双引号。
解决办法:

import ast
json = {'0': '想买一个','1': '我的', '3':'骗子主播,想上当的可以买'}
dict1 = ast.literal_eval(json)
转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1038428.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

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