如何阅读 Python 中的不纯文本?
How to read impure text in Python?
Python 对其文本编解码器非常挑剔。不幸的是,任何事情都可能而且将会发生在文本中,外来词和线路噪音就是主要的例子。当发生这种情况时,我不能让我的生产系统显示错误并停止。什么是好的故障保护方法?有没有我可以使用的方法或库,例如,简单地忽略编解码器无法识别的任何内容?
您可以使用 try
和 except
:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
s='eëeéeę'
try:
a=s.decode('ascii')
except UnicodeDecodeError:
# handle the error appropriately...
# this is just an example:
a='cant decode "s"'
可以指定codecs.open. It defaults to 'strict'
which throws exceptions, but 'ignore'
and 'replace'
are some other options的errors
参数。
Python 对其文本编解码器非常挑剔。不幸的是,任何事情都可能而且将会发生在文本中,外来词和线路噪音就是主要的例子。当发生这种情况时,我不能让我的生产系统显示错误并停止。什么是好的故障保护方法?有没有我可以使用的方法或库,例如,简单地忽略编解码器无法识别的任何内容?
您可以使用 try
和 except
:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
s='eëeéeę'
try:
a=s.decode('ascii')
except UnicodeDecodeError:
# handle the error appropriately...
# this is just an example:
a='cant decode "s"'
可以指定codecs.open. It defaults to 'strict'
which throws exceptions, but 'ignore'
and 'replace'
are some other options的errors
参数。