繁体   English   中英

何时将unicode转换为字符串?

[英]When to convert unicode to string?

我正在开展一个项目,旨在从一些网站获取一些数据,然后存储到数据库中。 但这些网站包含不同的字符集,如utf-8,gbk。 获取的数据是unicode,所以我想知道何时转换为字符串是正确的方法。 我现在立即转换为字符串,但似乎python建议尽可能长时间保持unicode,我无法弄清楚为什么? 因为我们总是不知道unicode对象的charset。

unicode都不具备的一个字符集; 它们是纯文本 在仅接受字节的介质中存储或传输时,仅转换为字节串。

处理应用中文字的建议如下:

  1. 从某个地方获取输入字节(字符串编码)
  2. 将它们解码为Unicode并在您的应用程序中使用Unicode
  3. 无论何时想输出文本,都要对其进行编码。

如果您提取网页,我已经看到了BeautifulSoup和其他库,它们可以为您转换Unicode中的传入字节。 因此,在您的应用程序中,您可以使用Unicode处理它们。

如果要将其存储在数据库中,可能是数据库是用utf-8编码的,如果没有,请了解其编码是什么,以及何时准备将信息写入数据库 ,首先对其进行编码。

text = text.encode('utf-8') # or the encode used by your DB
db.persist(text) # pseudocode here ;)

这样您就可以在应用程序前面使用unicode保护层进行输入和输出。

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM