将Unicode数据检索为代码

时间:2014-08-15 16:34:59

标签: python unicode

我捕获剪贴板数据,即unicode文本。使用此代码:

from Tkinter import Tk
r = Tk()
new_clipboard = r.clipboard_get()
print(new_clipboard)

file = open("jokes.txt", "w")
file.write(json.dumps(new_clipboard)))
file.close()

但结果是这样的:

u'\u0648\u0647\u0627\u060c\u0627\u0646\u06cc\u0645\u06cc\u0634\u0646 \u0647\u0627 \u0648 \u0628\u0633\u06cc\u0627\u0631\u06cc'

如何将此数据转换为原始字符并将其存储到文件中? 原始数据格式为UTF-8

2 个答案:

答案 0 :(得分:0)

那些 原始字符。

with io.open('output.txt', 'w', encoding='utf-8') as fp:
  fp.write(new_clipboard)

答案 1 :(得分:0)

如果您使用 python 2.x ,请使用以下代码:(在这种情况下,如果您想将Unicode编写为原始形状,则必须为文件指定真正的编码!并使用{ {1}}中的{1}}

ensure_ascii=False

但在 Python 3.x 中,内置dump#encoding: utf-8 import io,json with io.open('jokes.txt', 'w', encoding='utf8') as f: json.dump(new_clipboard, f, ensure_ascii=False) 的别名,所以如果您使用 python 3.x 您可以使用open()代替io.open(),同时注意open()必须是Unicode!我试试这个并且效果很好!