pycharm输出中文出现乱码的几种解决方法以及读取时打印出现乱码的解决[通俗易懂]

pycharm输出中文出现乱码的几种解决方法以及读取时打印出现乱码的解决[通俗易懂]pycharm打印中文出现乱码,有几种情况第一种:对于这种情况,是普通的一种,你需要检查开头,是否加了#-*-coding:utf-8-*-还有importsysreload(sys)sys.setdefaultencoding(‘utf-8’)对于这两个处理中文输出的代码,最好每次处理中文时就加上,会减少很多问题第二种问题:

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

pycharm打印中文出现乱码,有几种情况

第一种:

pycharm输出中文出现乱码的几种解决方法以及读取时打印出现乱码的解决[通俗易懂]

对于这种情况,是普通的一种,你需要检查开头,是否加了

# -*- coding:utf-8 -*-

还有

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

对于这两个处理中文输出的代码,最好每次处理中文时就加上,会减少很多问题

第二种问题:

这个网上有很多人说过,就是进入setting中,将file encoding中的encoding选项都选为 utf-8 选项

第三种问题:

如果以上两种都无法解决你的问题,打印出来还是乱码,也许你输入的中文编码就有问题了。

print type(s) <span style="font-family: Arial, Helvetica, sans-serif;">#s为字符串</span>

如果结果是 type str,  pycharm的console中文输出 的要求需要的编码是unicode,这就是主要症结所在。所以,我们需要做的是把str转为unicode

with open("test") as f:
    for i in f:
        # 将读入的utf-8字节流进行解码
        u = i.decode('utf-8')

这是一种常规的做法,将字符输出是编码,还有一种就是在读入数据的时候就将字符编码

# 使用codecs直接开unicode通道
import codecs
file = codecs.open("test", "r", "utf-8")
for i in file:
    print type(i)
    # i的类型是unicode的

这里使用了codecs库,这是一种
Python自带处理各种字符编码的字符串和文件的库,对文件的读入,爬虫网页的读入,都有很好的效果,网上有很多教程,这里就不多赘述。


如果pycharm还有问题请留言。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/175072.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 匿名函数自调用_自己调用自己的函数叫

    匿名函数自调用_自己调用自己的函数叫我们知道一个HTML文件在被加载的时候是从根标签html依次往下的,在遇到link,script等标签引入的外部资源时,下载外部资源,并执行外部资源。在js中,表达式会被立即执行,也就是说,不管是引入的外部js文件还是嵌入在html文件中的js脚本,其中的表达式都会被立即执行。函数名是一个指向函数的指针。在JavaScript中,定义函数有常见的两种形式:函数声明和函数直接量(或者叫函数表达式)

    2022年10月3日
    3
  • 网页游戏开发(2)「建议收藏」

    网页游戏开发(2)「建议收藏」                      网页游戏开发(2)                                               作者:任尚益                      …

    2022年5月18日
    42
  • c#启动外部程序_winform程序自动更新

    c#启动外部程序_winform程序自动更新//class里面放入这段代码[DllImport(“shell32.dll”)]publicstaticexternintShellExecute(IntPtrhwnd,StringBuilderlpszOp,StringBuilderlpszFile,StringBuilderlpszParams,StringBuilderlpszDir,intFsShowCmd);//需要打开的地方插入此段代码ShellExecute(IntPtr.Zero,newStr

    2022年8月30日
    4
  • 第六章:activiti流程分流判断之排它网关和并行网关

    第六章:activiti流程分流判断之排它网关和并行网关第六章:activiti流程分流判断之排它网关和并行网关

    2022年4月23日
    152
  • java 排序队列_java实现顺序队列

    java 排序队列_java实现顺序队列packagequeue;importjava.util.Scanner;publicclassArrayQueueLoop{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstub//测试代码//测试数组循化队列CircleQueuetestQueue=newCircleQueue(4);//设置的是有效…

    2022年7月16日
    18
  • linux 实时查看日志 最新最后100行 tail「建议收藏」

    linux 实时查看日志 最新最后100行 tail「建议收藏」(1)实时查看日志文件tail-f日志文件名(2)只查看日志文件后100行tail-f-n100日志文件名(3)搜寻字符串grep‘搜寻字符串’日志文件名按ctrl+c退出————————————————版权声明:本文为CSDN博主「wanghai76」的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:http…

    2022年6月4日
    1.6K

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号