python - 删除 \xa0 并仅修改数字
问题描述
我编写了一个使用 bs4 提取表格的程序,该程序的一部分包含从单元格中提取文本并将其修改为数组我收到了以下输出,我想删除所有 \xa0,我也想保存只是最终数组中的数字(这里是 stmat),例如,我只想要“74°F”中的“74”我可以得到上述 2 个问题的答案下面只是用于修正的 for 循环
for row in stat_table.find_all('tr') :
for cell in row.find_all('td'):
print(cell.text)
stmat.append(cell.text)
count = count + 1
m = m+1
print(count)
print(stmat)
n = count/10
我有以下修改矩阵的输出
['8:30 PM', '73\xa0F', '72\xa0F', '96\xa0%', 'SW', '9\xa0mph', '0\xa0mph', '29.35\xa0in', '0.0\xa0in', 'Cloudy', '12:30 AM', '73\xa0F', '71\xa0F', '95\xa0%', 'WSW', '9\xa0mph', '0\xa0mph', '29.35\xa0in', '0.0\xa0in', 'Cloudy', '3:30 AM', '74\xa0F', '73\xa0F', '95\xa0%', 'SE', '6\xa0mph', '0\xa0mph', '29.39\xa0in', '0.0\xa0in', 'Mostly Cloudy', '5:30 AM', '78\xa0F', '76\xa0F', '92\xa0%', 'SW', '7\xa0mph', '0\xa0mph', '29.40\xa0in', '0.0\xa0in', 'Cloudy', '8:30 AM', '79\xa0F', '75\xa0F', '87\xa0%', 'SW', '9\xa0mph', '0\xa0mph', '29.34\xa0in', '0.0\xa0in', 'Mostly Cloudy', '11:30 AM', '77\xa0F', '75\xa0F', '93\xa0%', 'SW', '6\xa0mph', '0\xa0mph', '29.33\xa0in', '0.0\xa0in', 'Cloudy', '2:30 PM', '76\xa0F', '75\xa0F', '96\xa0%', 'SW', '3\xa0mph', '0\xa0mph', '29.38\xa0in', '0.0\xa0in', 'Mostly Cloudy', '5:30 PM', '76\xa0F', '74\xa0F', '95\xa0%', 'SW', '7\xa0mph', '0\xa0mph', '29.41\xa0in', '0.0\xa0in', 'Mostly Cloudy', '8:30 PM', '73\xa0F', '72\xa0F', '96\xa0%', 'SW', '9\xa0mph', '0\xa0mph', '29.35\xa0in', '0.0\xa0in', 'Cloudy', '12:30 AM', '73\xa0F', '71\xa0F', '95\xa0%', 'WSW', '9\xa0mph', '0\xa0mph', '29.35\xa0in', '0.0\xa0in', 'Cloudy', '3:30 AM', '74\xa0F', '73\xa0F', '95\xa0%', 'SE', '6\xa0mph', '0\xa0mph', '29.39\xa0in', '0.0\xa0in', 'Mostly Cloudy']
解决方案
由于这似乎是 unicode 数据,您应该按照NFKC
标准对其进行规范化。那是因为\xa0
字符代表一个不间断的空格。当我们执行chr(160)
which returns时,我们可以看到这一点'\xa0'
。
import unicodedata
stmat.append(unicodedata.normalize("NFKC", cell.text))
推荐阅读
- javascript - 我在其他地方使用 Bootstrap Datapicker 显示日期并突出显示周末
- c++ - 忽略c ++上的间距的最有效方法?
- r - 无法在网状结构中更改 Python 路径
- c# - 用户控件 RegisterScriptDescriptors 循环参考
- node.js - 我可以在端口 443 上使用与 https 相同的节点 js 套接字 io 吗?
- java - 编写 J/XFS 代码以与 ATM 外围设备交互
- azure - Azure OAuth 处理应用程序问题
- machine-learning - 将视觉上不同的对象分类为一类
- ruby-on-rails - 使用 RubyMine 调试 Rails 5:断点不起作用
- javascript - JS将列表项颜色与选定项匹配