python3.5 - Python3 中文输出乱码

 oDavid_仔o_880 发布于 2022-10-27 08:41

在cmd下输出正常,在python.exe下输出乱码



在VScode的python插件下的Integrated Terminal/Console运行模式也是这样的情况

我的代码

# -*- coding: utf-8 -*-
'''
假设有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:
S=√[p(p-a)(p-b)(p-c)] 
而公式里的p为半周长:
p=(a+b+c)/2 
'''
import sys
print(sys.getdefaultencoding())
import math
sides=[float(n) for n in input('输入3条边:').split()]
girth=sum(sides)
p=girth/2
S=math.sqrt(p*(p-sides[0])*(p-sides[1])*(p-sides[2]))
print('the area is %f,the girth is %.0f' % (S,girth))
1 个回答
  • 把python.exe、VScode的 输出编码也改为 utf8


    要不,把系统默认编码改回 gbk / cp936


    可以了,设置GBK能正常显示,但是为什么会这样?

    @Recoding

    sys.setdefaultencoding 设置的默认编码只对 cmd 有效,
    你改成utf-8,而 python.exe 和 vscode 的输出窗口的编码仍然是默认gbk,
    所以就显示乱码了
    然而,你并不知道如何改 python.exe 和 vscode 的输出窗口的编码。

    2022-11-12 01:43 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有