为什么打印带有unicode字符的文件不会产生表情符号?

Anb*_*ran 2 python unicode

文本文件的内容是

u'\u26be\u26be\u26be'
Run Code Online (Sandbox Code Playgroud)

当我运行脚本时......

import codecs
f1 = codecs.open("test1.txt", "r", "utf-8")
text = f1.read()
print text
str1 = u'\u26be\u26be\u26be'
print(str1)
Run Code Online (Sandbox Code Playgroud)

我得到了输出......

u'\u26be\u26be\u26be'
???
Run Code Online (Sandbox Code Playgroud)

问题:为什么与文件内容相同的字符串能够正确生成表情符号?

fal*_*tru 8

文件内容u'\u26be\u26be\u26be'就像r"u'\u26be\u26be\u26be'".换句话说,字符 u,\,u,2,...

您可以???使用ast.literal_eval以下命令将此字符串转换为字符串

import ast
import codecs

with codecs.open("test1.txt", "r", "utf-8") as f1:
    text = ast.literal_eval(f1.read())
print text
...
Run Code Online (Sandbox Code Playgroud)

但是,为什么文件包含这样的字符串(u'\u26be\u26be\u26be')而不是????也许您需要考虑重新设计文件保存部分.