python - 在python中加载到数据库的不可见的unicode字符

标签 python mysql string unicode replace

对此有很多问题和修复,但似乎没有一个对我有用。 我的问题是我正在读取一个包含字符串的文件并将每一行加载到数据库中。

在文件中它看起来像普通文本,而在数据库中它被读取为一个 unicode 空间。我尝试用空格和类似选项替换它,但都没有用。

例如在文本文件中,字符串将是这样的:

The abrupt departure

插入数据库后,它看起来像:

The abrupt departure

当我尝试对数据库中的数据运行查询时,它看起来像:

"The abrupt\xc2\xa0departure"

我尝试了以下方法:

if "\xc2\xa0"  in str: 
     str.replace('\xa0', ' ')
     str.replace('\xc2', ' ')
     print str

上面的代码打印的字符串如下:

The abrupt departure

但是插入回DB时还是一样。

感谢任何帮助。

最佳答案

试试这个:

这将删除 Unicode 字符

>>> s = "The abrupt departure"
>>> s = s.decode('unicode_escape').encode('ascii','ignore')
>>> s
'The abrupt departure'

或者, 您可以尝试使用 replace ,因为您已经尝试过了。但是您忘记重新分配给同一个变量。

>>> s = "The abrupt departure"
>>> s = s.replace('\xc2', '').replace('\xa0','')
>>> s
'The abrupt departure'

关于python - 在python中加载到数据库的不可见的unicode字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39764520/

相关文章:

python - 如何使用 Python 子进程在 Windows 中进行搜索

java - 爬取content-type非text/html的URL

python - 第二次调用 model.fit() 时出现 CNTK 内存不足错误

php - 如何从数据库中获取 php session 的用户类型

mysql - 在 MySQL 中选择不为空的 DISTINCT

php - 打开时出现 WAMP 服务器 2 错误

Python - 非常基础 'encryptor'

Android 将 String 转换为 byte[] - 取 byte[]

python - 选择满足条件的元素

python - pandas:如何将嵌套 JSON 解包为数据帧?