将IP地址列表导入到数组/列表Python 2.7中

时间:2017-07-11 17:30:14

标签: python arrays python-2.7 csv

我正在开发一个小型项目来获取IP /子网列表,并将它们转换为单独的IP地址和子网掩码。我正在使用netaddr来完成更改,现在我正在将下面的IP列表导入到数组或列表中。

13.107.6.152/31

13.107.19.10/31

23.103.160.0/20

23.103.224.0/19 ......等

我开始尝试逐行导入的txt文件,并尝试使用带空格分隔的csv文件以及放置逗号并将其用作分隔符。

这是我最近的工作,使用它作为csv文件

    13.107.6.152/31,13.107.19.10/31,23.103.160.0/20


with open('FileLocation.csv', 'rb') as f:
reader = csv.reader(f, delimiter=',')
ipArray = list(reader)

然而,当我这样做时:

print len(ipArray)
print ipArray

它只返回1,然后返回一个IP地址块。

有没有更好的方法来格式化csv或文本文件中的IP,这有助于我将它们插入到数组或列表中?我的目标是将每个IP放在自己的位置,以便我可以通过循环运行它。

谢谢:)

1 个答案:

答案 0 :(得分:0)

使用每行1个IP的txt文件,以下内容将满足您的需求:

with open('IPs.txt', 'r') as fin:
    ips = fin.read().splitlines()