2017-03-26 22 views
0

以下のコードを実行すると、変数 'a'には192.168.1.1-192.168.1.254のIPのリストが含まれていますが、 'print(dir ([:]):関数内に配列を作成できません

ERROR:

["[IPv4Address('192.168.1.254')]"] 
Traceback (most recent call last): 
    File "./test.py", line 27, in <module> 
    print(dir(a[:])) 
TypeError: 'NoneType' 

CODE:

python3 
    import ipaddress 
    import csv 

used_ips = [] 

def csv_dict_reader(file_obj): 
    """ 
    Read a CSV file using csv.DictReader 
    """ 
    reader = csv.DictReader(file_obj, delimiter=',') 
    for line in reader: 
     used_ips.append(line["ip_address"]) 
     print(used_ips) 

def ip_list(network_addr): 
    ips = [] 
    addr = ipaddress.ip_network(network_addr) 
    for i in addr.hosts(): 
     ips.append([i]) 

if __name__ == "__main__": 
    with open("data.csv") as f_obj: 
     csv_dict_reader(f_obj) 

a = ip_list('192.168.1.0/24') 
print(dir(a[:])) 
+2

ip_listの最後にipsを返す –

答えて

0
python3 
import ipaddress 
import csv 

used_ips = [] 

def csv_dict_reader(file_obj): 
    """ 
    Read a CSV file using csv.DictReader 
    """ 
    reader = csv.DictReader(file_obj, delimiter=',') 
    for line in reader: 
     used_ips.append(line["ip_address"]) 
     print(used_ips) 

def ip_list(network_addr): 
    ips = [] 
    addr = ipaddress.ip_network(network_addr) 
    for i in addr.hosts(): 
     ips.append([i]) 
    return ips 

if __name__ == "__main__": 
    with open("data.csv") as f_obj: 
     csv_dict_reader(f_obj) 

a = ip_list('192.168.1.0/24') 
print(dir(a[:])) 
)」は、エラーをスロー
関連する問題