【发布时间】:2014-10-30 11:34:28
【问题描述】:
什么: 正在使用 Python 2.7。
我正在使用 virustotal API 以列表格式生成 IP 列表。当我在对象上运行 type() 时,它返回列表。底部是数据示例。有什么方法可以制作过滤器、正则表达式列表理解或一些通配符系统来删除所有以 10. 172.16-172.31 和 192.168 开头的 IP?
原因:
报告中生成了一些常见的 IP,但它们对我来说毫无用处。我做了一个列表理解来过滤掉特定的地址,但是列表正在增长,并且它很快变得很明显,排除主列表的列表会减慢速度。我想删除所有不重要的 IP,所以我不会因为对数据库的无用提交而减慢我的脚本。
如何:
unique = [xte for xte in unique if xte not in fil2]
fil2 = [['255.255.255.255',67],['137.170.185.211',123],['213.186.33.99',53],['10.0.2.15',68]]
示例:数据:
>>> fil2 = [['255.255.255.255',67],['137.170.185.211',123],['213.186.33.99',53],['10.0.2.15',68]]
>>> type(fil2)
<type 'list'>
【问题讨论】:
标签: python regex ip-address list-comprehension