无法将此文本转换为 python 中的正常格式?
Can't convert this text in normal format in python?
我正在网上抓取一些东西,我得到了类似这样的东西“735 , , 02122 Dorchester MA 02121”如何在 python 中将其转换为普通文本?
你可以 运行 通过 Unicode normalization:
import unicodedata
unicodedata.normalize('NFKD', '735 , , 02122')
# '735 William T Morrissey Blvd, Dorchester, MA 02122'
这是一个演示其工作原理的 REPL 屏幕截图:
使用原生 python:
def normalise(a):
newstr = ''
for i in a:
if 120458<=ord(i)<=120483:
newstr+=chr(ord(i)-120361)
elif 120432<=ord(i)<=120457:
newstr+=chr(ord(i)-120367)
else:
newstr+=i
return newstr
输出:
a = "735 , , 02122 Dorchester MA 02121"
>>> normalise(a)
'735 William T Morrissey Blvd, Dorchester, MA 02122 Dorchester MA 02121'
我正在网上抓取一些东西,我得到了类似这样的东西“735 , , 02122 Dorchester MA 02121”如何在 python 中将其转换为普通文本?
你可以 运行 通过 Unicode normalization:
import unicodedata
unicodedata.normalize('NFKD', '735 , , 02122')
# '735 William T Morrissey Blvd, Dorchester, MA 02122'
这是一个演示其工作原理的 REPL 屏幕截图:
使用原生 python:
def normalise(a):
newstr = ''
for i in a:
if 120458<=ord(i)<=120483:
newstr+=chr(ord(i)-120361)
elif 120432<=ord(i)<=120457:
newstr+=chr(ord(i)-120367)
else:
newstr+=i
return newstr
输出:
a = "735 , , 02122 Dorchester MA 02121"
>>> normalise(a)
'735 William T Morrissey Blvd, Dorchester, MA 02122 Dorchester MA 02121'