鱼C论坛

 找回密码
 立即注册
查看: 999|回复: 13

python关于中文乱码求助

[复制链接]
发表于 2019-4-4 15:07:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
大家好 小白我用的是python2.7 然后再网上百度的说是用这个代码可以解决
# -*- coding: utf-8 -*-
但是最近不知道怎么了 用notepad++ 写的代码用 powershell运行后中文还是乱码 = =
各位大佬有没有方法= =
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-4 15:56:35 | 显示全部楼层
      问题多半出在这个 utf8 编码上,因为按照 GBK 和 unicode 编码的字符串都是可以正常显示的,唯独这个 utf8 不能。

      把你中文显示乱码的文件用 Notepad ++  打开,用鼠标点击 "编码" >  "使用 utf-8 编码" 试试看。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-4 17:48:31 From FishC Mobile | 显示全部楼层
这条语句仅仅能够保证python在源码这个级别上认识你的汉字而已
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-4 17:50:04 From FishC Mobile | 显示全部楼层
而且,2.x对中文支持的并不好,建议更换至3.x
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-4 21:22:50 From FishC Mobile | 显示全部楼层
jackz007 发表于 2019-4-4 15:56
问题多半出在这个 utf8 编码上,因为按照 GBK 和 unicode 编码的字符串都是可以正常显示的,唯独这个 ...

可是我用的就是utf8的编码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-4 21:34:48 | 显示全部楼层
存成ANSI编码,然后把乱码改了再运行就OK了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-4 21:35:27 | 显示全部楼层
      可否把你在 Notepad ++ 中看到的乱码贴出来一部分,让大家帮忙分析一下?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-5 00:18:22 | 显示全部楼层
兄弟,编码的问题帮不了你,但是有句话还是得说:
请放弃学习2.7版本,改为学习3.7及以上的新版
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-5 23:27:33 | 显示全部楼层
jackz007 发表于 2019-4-4 21:35
可否把你在 Notepad ++ 中看到的乱码贴出来一部分,让大家帮忙分析一下?

好像上传不了图片啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-5 23:31:06 | 显示全部楼层
在powershell下运行python 输出的还是中文

PS E:\biancheng> python
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print'中国'
中国




但是用notepad++编辑好在运行就是乱码

PS E:\biancheng> python 001.py
涓浗
PS E:\biancheng>
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-6 06:37:06 From FishC Mobile | 显示全部楼层
你这是源码吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-6 11:37:55 From FishC Mobile | 显示全部楼层
wp231957 发表于 2019-4-6 06:37
你这是源码吗

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-6 11:49:15 From FishC Mobile | 显示全部楼层
源码是一些单行文本组成的
我并没有看到
另,舍弃2.x,换用3.x
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-6 19:43:05 | 显示全部楼层
本帖最后由 jackz007 于 2019-4-6 19:49 编辑
ZhengL 发表于 2019-4-5 23:31
在powershell下运行python 输出的还是中文

PS E:\biancheng> python


      问题还是出在 utf8 编码上,因为 Windows 系统不支持 utf8 编码。
      不信楼主可以试试下面的代码:
  1. print '中国' . decode('utf8')
复制代码

      这条指令会把字符串 '中国' 按 utf8 解码成 unicode 编码,然后再显示,如果能看到中文字符,就说明是 utf8 编码的问题。

      解决方法是把 notepad ++ 编码改为 ANSI(缺省),然后,在每个 Python 代码的开头加上 '#coding:gbk' 就不会有任何问题了。当然,这是在 Windows 系统下的解决方案,不涉及其他操作系统,例如,Linux 系统本身就支持 utf8 编码,便不需要这些修改。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-15 02:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表