+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

对存储为Python中变量的字符串使用u'string'[关闭]

发布于2020-07-02 21:49     阅读(884)     评论(0)     点赞(10)     收藏(4)


作为Python 2.7的法语用户,我试图在Python控制台中正确打印包含重音的字符串,例如“é”,“è”,“à”等。

我已经知道在字符串的显式值之前使用u的技巧,例如:

print(u'Université')

正确打印最后一个字符。

现在,我的问题是:如何对存储为变量的字符串执行相同的操作?

确实,我知道我可以执行以下操作:

mystring = u'Université'
print(mystring)

但问题在于的值mystring一定要传递到SQL查询中(使用psycopg2),因此我无力将u的值存储在内部mystring

那么我该如何做类似“打印unicode值mystring”的操作?


解决方案


u印记不是价值的一部分,它只是一个类型指示器。要将字符串转换为Unicode字符串,您需要知道编码。

unicodestring = mystring.decode('utf-8')  # or 'latin-1' or ... whatever

并进行打印,通常(在Python 2中)需要转换回系统在输出文件句柄上接受的内容:

print(unicodestring.encode('utf-8'))  # or 'latin-1' or ... whatever

Python 3通过将Unicode字符串和(现在称为)bytes对象分开来澄清(尽管没有直接简化)这种情况



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接: https://www.pythonheidong.com/blog/article/433207/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

10 0
收藏该文
已收藏

评论内容:(最多支持255个字符)