编码声明:是coding:utf-8还是coding=urf-8
答案:2 悬赏:60 手机版
解决时间 2021-02-21 07:42
- 提问者网友:姑娘长的好罪过
- 2021-02-21 01:40
编码声明:是coding:utf-8还是coding=urf-8
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-02-21 02:20
PY文件当中是不支持中文的,即使你输入的注释是中文也不行,为了解决这个问题,就需要把文件编码类型改为UTF-8的类型,输入这个代码就可以让PY源文件里面有中文了。 建议你写代码之前都把这句话加上,因为不管是注释还是弹出消息提示
全部回答
- 1楼网友:十鸦
- 2021-02-21 03:55
我们知道在python源码的头文件中要声明编码方式,如果你不只是会用到ascii码,很多人都写得都有点差别:
#coding=utf-8
#coding:utf-8
#-*- coding:utf-8 -*-
那么怎样写才是有效地呢,哪些优势无效的呢?
可以查看下http://www.python.org/dev/peps/pep-0263/的解释
粗略的看下:
概要:
这个pep的目的是介绍在一个python源文件中如何声明编码的语法。随后python解释器会在解释文件的时候用到这些编码信息。最显著的是源文件中对unicode的解释,使得在一个能识别unicode的编辑器中使用如fut-8编码成为可能
怎么声明呢?如果在python中我们并没有声明别的编码方式,就是以ascii编码作为标准编码方式的
为了定义源文件的编码方式,一个魔法是的声明应当被放在这个文件的第一行或者是第二行例如: #coding=或者(使用流行编辑器中的格式化方式) #!/usr/bin/python
# -*- coding: -*-或者 #!/usr/bin/python
# vim: set fileencoding= :不管怎么样,这些在第一行或者第二行的声明都要符合正则表达式 "coding[:=]\s*([-\w.]+)"所以我们就可以知道为什么使用冒号或者等号都可以了,如果声明的编码python不能识别就会报错
examples these are some examples to clarify the different styles for
defining the source code encoding at the top of a python source
file:
1. with interpreter binary and using emacs style file encoding
comment:
#!/usr/bin/python
# -*- coding: latin-1 -*-
import os, sys
...
#!/usr/bin/python
# -*- coding: iso-8859-15 -*-
import os, sys
...
#!/usr/bin/python
# -*- coding: ascii -*-
import os, sys
...
2. without interpreter line, using plain text:
# this python file uses the following encoding: utf-8
import os, sys
...
3. text editors might have different ways of defining the file's
encoding, e.g.
#!/usr/local/bin/python
# coding: latin-1
import os, sys
...
4. without encoding comment, python's parser will assume ascii
text:
#!/usr/local/bin/python
import os, sys
...
5. encoding comments which don't work:
missing "coding:" prefix:
#!/usr/local/bin/python
# latin-1
import os, sys
...
encoding comment not on line 1 or 2:
#!/usr/local/bin/python
#
# -*- coding: latin-1 -*-
import os, sys
...
unsupported encoding:
#!/usr/local/bin/python
# -*- coding: utf-42 -*-
import os, sys
...
以上几个例子充分说明了哪些是正确的写法,哪些是正确的写法
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯