【发布时间】:2019-01-31 20:58:41
【问题描述】:
我正在尝试向文本文件中添加一些符号,我无法在编辑器中定义这些符号 但它可以从命令行运行。
symbols = '$¢£¥€¤' 在解释器中工作,但在编辑器(崇高)中工作,但是它不能在命令中正确打印这些符号。但是如果我 decode("utf-8") 然后打印工作正常。
symbols = '$¢£¥€¤'
s=symbols.decode("utf-8")
我使用 python 2.7 和 sublime 文本编辑器
这是我使用编辑器运行时遇到的错误
SyntaxError: Non-ASCII character '\xc2' in file /home/programmer/Desktop/seleniumIns.py on line 184, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
如何解决这些问题以将它们添加到我在编辑器中的原始程序中
【问题讨论】:
-
“命令中没有正确打印这些符号”是什么意思?
-
您的文件顶部是否还有
# -*- coding: utf-8 -*-之类的内容,Sublime 是否将其保存为 UTF8? -
@RemcoGerlich 我得到的是 � 而不是实际字符(除了 $ 可以正常打印)
-
@AmjasdMasdhash,如果你是 Python 初学者,你绝对应该切换到 Python 3。在那里,你可以省略
# coding: utf-8声明(因为 UTF-8 是默认的源代码编码)和还有.decode('utf8')部分(因为字符串是Unicode 字符串)。 -
@lenz 我已经使用 python 一年多了,python 2 可以在
unicode和str之间有所不同,这与 python 3 不同,还有print "Hello world"而不是print ("Hello world"):-D