python - 为什么它会打印有趣的字符?单码问题?

标签 python django unicode encoding

用户输入了单词

éclair

进入搜索框。

Showing results 1 - 10 of about 140 for �air. 

为什么会显示奇怪的问号? 我正在使用 Django 来显示它:

Showing results 1 - 10 of about 140 for {{query|safe}}

最佳答案

这是一个编码问题。您的表单或输出页面很可能不是 UTF-8 编码的。

这篇文章是关于这个问题的非常读物:The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

你需要检查编码

  • 用户输入单词的 HTML 页面
  • 您用来输出单词的 HTML 页面
  • 用于处理字符串的函数的多字节能力(尽管这在 Python 中可能不是问题)

如果搜索要应用于数据库,您将需要检查数据库连接的编码,以及表和列的编码。

关于python - 为什么它会打印有趣的字符?单码问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1998967/

相关文章:

python - Pandas 的元素不在索引列表中

python - getattr 和 unicode 属性

python - 值错误 : Cannot assign User: issue on my OneToOneField relationship

json - 使用 JSON 显示阿拉伯字符

spring-mvc - Spring Security记住我的cookie Unicode字符错误

python - 更新 tkinter 菜单栏项目的标签?

Python:以值作为字典获取前n个键

python - 在django原子事务中提交特定的保存操作

python - 如何在 Django 中使用 <div class ='field_type'> 标记表单字段

c++ - 在控制台或窗口上显示 Unicode/ASCII 字符