本文目录一览:
python解决csv文件用excel打开乱码问题
【问题】
python输出的csv文件用excel打开,里面的中文会变成乱码,但用window下的记事本或mac下的numbers打开就正常显示。
原因是python输出的文件是utf-8编码写入的,excel默认以gbk方式读取,导致乱码发生。
【解决方法1】文件产出时encoding设置为utf-8-sig
用excel打开csv时,excel会先检查文件的第一个字符,来了解这个文件是什么编码方式,如果这个字符是BOM,excel就知道用utf-8的方式打开这个文件。python自带了处理BOM的编码方式uft-8-sig,因此只需要在文件产出时将encoding设置为utf-8-sig。
如果文件不是由python产出的,只需要以utf-8方式读入再以utf-8-sig方式存储即可
【解决方法2】懒人法,适用只含简体中文的文件
用记事本打开,点击另存为,右下角编码方式选择“ANSI”,这个过程是把这个文件改成gbk编码格式,excel就是默认用gbk方式打开的。
参考: Python写的csv文件,如何让 Excel 双击打开不乱码? - 云+社区 - 腾讯云
对编码格式一窍不通的可以阅读以下网页
python笔记——二进制和文件编码_砍柴姑娘Jourosy的博客-CSDN博客
编码方式之ASCII、ANSI、Unicode概述 - 蓝海人 - 博客园
【简单总结】:
1. 首先需要了解 字符集 和 字符编码 两个概念,字符集定义了字符和二进制的一一对应关系,字符编码规定了如何将字符的编号存储到计算机中。
2. Unicode是字符集,包含了全球文字的唯一编码,utf-8是编码方式,将unicode以某种方式存储到计算机中。
3. 有些字符集和编码是结合在一起的,称作字符集还是编码都无所谓,比如ASCII,GBK
4. ANSI是各个国家地区不同扩展编码方式的总称,互不兼容(可以看出来通用性没有utf好)
5. 不同编码方式在转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。
Python打不开.py文件
Python打不开.py文件是因为打开方式不对,正确的打开步骤为:
1、进入需要打开的py文件目录:
2、按下Ctrl键+鼠标右键,打开命令菜单:
3、选择命令菜单中的【在此处打开命令窗口】:
4、在打开的命令行窗口输入python 文件名.py 命令:
5、键入回车,可以打开执行py文件,结果如下:
注意事项:
命令行中执行python命令,需要提前将python执行程序加入系统变量,则可以在任意文件夹执行python命令。
py文件打不开一闪就没了
找到到我们平时编辑python后,将文件储存的所在文件夹的位置,尝试下双击,看是否能打开。
打不开或者闪退,可以尝试选择打开方式,选择Python应用程序或者文本编译器看看是否能够打开文件。我先尝试了双击,未打开,接着选择打开方式--pthon,还是失败。然后选择了平时的文本编译器Geany,成功打开了命名为comment.py的python文件。
尝试用文本编译器执行该python文件,看看能否运行。结果显示可以成功运行,尝试在完成后的程序末尾加上函数input(),加入这个函数后,相当于在等待你输入,这是一个还未完结的程序。再选择保存,退出geany编译器,再次找到该python文件,尝试双击或者选择python程序打开该文件。问题就解决了。