2016-09-19 32 views
0

我試圖在python中使用netaddr超網IP列表的網絡。文件作爲python輸入netaddr

代碼:

import netaddr 
from netaddr import * 
iplist = [IPNetwork('10.105.205.8/29'),IPNetwork('10.105.205.16/28'),IPNetwork('10.105.205.0/29')] 
print '%s' % netaddr.cidr_merge(iplist) 

**輸出:**哪實際工作。

[IPNetwork('10.105.205.0/27')] 

我可以提供文件輸入嗎?其中包含CSV文件中的IP網絡?

IP_Network.csv

8.35.196.0/23 
8.35.196.0/24 
8.35.197.0/24 
8.35.198.0/23 
8.35.198.0/24 
8.35.199.0/24 
8.35.200.0/21 
8.35.200.0/23 
8.35.200.0/24 
8.35.201.0/24 
8.35.202.0/23 

回答

0

我不熟悉的netaddr中模塊,但對我來說,似乎你只是從建立輸入列表。如果你有在每行網絡的輸入文件,將這項工作:

with open ("inputfile", "r") as fp: 
    iplist = [IPNetwork(q) for q in fp.read().splitlines()] 

哈努