python # -*- coding: cp936 -*- # -*- coding: utf-8 -*- 是做什么用的?

发布网友

我来回答

5个回答

热心网友

这种格式是对python源文件编码方式的声明。
它表示你的源文件(当前执行的python脚本)的编码表,如果指定,则python解释器会按照指定的编码来对脚本内容进行解码。
你在windows中创建的文本文件如无意外都应该是缺省的中国地区ANSI编码即GBK编码。而cp936编码能够与GBK兼容,但少几十个字符,而utf8编码不与GBK编码兼容。
所以你用GBK编码写出的python脚本,却向解释器声明它是由utf8写成,当然会出错。实际上你删掉编码的声明,python解释器能够自行判断编码表。
另外你也可以尝试将python脚本转换编码为utf8,具体操作为使用记事本打开,然后另存为,选择编码,utf8。如使用其他IDE,请自行摸索。

热心网友

说明你代码保存的字符集是ansii扩展的字符集,没有使用uft-8

热心网友

是不是在文件头部(第二行)加入如下代码?
#coding:utf-8

热心网友

用来指示该python脚本文件是用什么字符集编码的

热心网友

“七层话,可有些低了。开元

热心网友

这种格式是对python源文件编码方式的声明。
它表示你的源文件(当前执行的python脚本)的编码表,如果指定,则python解释器会按照指定的编码来对脚本内容进行解码。
你在windows中创建的文本文件如无意外都应该是缺省的中国地区ANSI编码即GBK编码。而cp936编码能够与GBK兼容,但少几十个字符,而utf8编码不与GBK编码兼容。
所以你用GBK编码写出的python脚本,却向解释器声明它是由utf8写成,当然会出错。实际上你删掉编码的声明,python解释器能够自行判断编码表。
另外你也可以尝试将python脚本转换编码为utf8,具体操作为使用记事本打开,然后另存为,选择编码,utf8。如使用其他IDE,请自行摸索。

热心网友

说明你代码保存的字符集是ansii扩展的字符集,没有使用uft-8

热心网友

是不是在文件头部(第二行)加入如下代码?
#coding:utf-8

热心网友

用来指示该python脚本文件是用什么字符集编码的

热心网友

“七层话,可有些低了。开元

热心网友

这种格式是对python源文件编码方式的声明。
它表示你的源文件(当前执行的python脚本)的编码表,如果指定,则python解释器会按照指定的编码来对脚本内容进行解码。
你在windows中创建的文本文件如无意外都应该是缺省的中国地区ANSI编码即GBK编码。而cp936编码能够与GBK兼容,但少几十个字符,而utf8编码不与GBK编码兼容。
所以你用GBK编码写出的python脚本,却向解释器声明它是由utf8写成,当然会出错。实际上你删掉编码的声明,python解释器能够自行判断编码表。
另外你也可以尝试将python脚本转换编码为utf8,具体操作为使用记事本打开,然后另存为,选择编码,utf8。如使用其他IDE,请自行摸索。

热心网友

说明你代码保存的字符集是ansii扩展的字符集,没有使用uft-8

热心网友

是不是在文件头部(第二行)加入如下代码?
#coding:utf-8

热心网友

用来指示该python脚本文件是用什么字符集编码的

热心网友

“七层话,可有些低了。开元

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com