1. py2和py3的编码&字符串
# 字符串: # py2: # unicode v = u"root" 本质上用unicode存储(万国码) # (str / bytes) v = "root" 本质用字节存储 # py3: # str v = "root" 本质上用unicode存储(万国码) # bytes v = b"root" 本质上用字节存储 # 编码: # py2: # - ascii(默认编码) # 文件头可以修改: # -*- encoding:utf-8 -*- # py3: # - utf-8(默认编码) # 文件头可以修改: # -*- encoding:utf-8 -*-
2. pycharm里的代码编码和文本编码
# pycharm进入File --> Settings --> Editor --> Files Encodings --> 有Global ncoding和Project Encoding # Global ncoding: 指的是代码的默认编码格式, 如果在代码开头指定了,那么就用指定的编码 # Project Encoding: 我测试出来的是,它指的是文本的编码格式 import os os.system(‘dir‘) ?????? D ?е???? software ??????к??? D657-2442 D:\pythonproject\day28 ???¼ 2019/10/11 21:46 <DIR> . 2019/10/11 21:46 <DIR> .. 2019/10/04 09:16 89 01?γ??? 2019/10/11 17:34 <DIR> 02?????? 2019/10/11 21:46 51 02???????.py 2019/10/11 21:36 668 ???os.system????????????.py 3 ????? 808 ??? 3 ???¼ 319,833,575,424 ??????? # 比如os.system(‘dir‘)为什么在pycharm中显示乱码呢? # 个人理解 # 因为代码是以utf-8的编码格式进行存储的, 运行后, 终端的显示的是gbk编码的文本, 而pycharm的显示是utf-8的文本, 将gbk编码的文本转换成utf-8肯定会出席乱码啊
原文:https://www.cnblogs.com/kangqi452/p/11657165.html