FOR 循环和 IP 地址关联问题
Issue with FOR cycles, and correlation of IP addresses
我是 python 的新手,正在尝试创建一个 python3 脚本,该脚本接受 CSV 格式的输入(这是一个防火墙规则集):
Source;Destination;Service;Action;Comment
10.0.0.0/8 172.16.0.0/16 192.168.0.0/24 23.2.20.6;10.0.0.1 10.0.0.2 10.0.0.3;udp:53 tcp:53;accept;No.10: ID: INC0000000001
并关联其中包含的 IP。
我创建了以下基地:
import ipaddress
import csv
with open('BE-E2_D1_Source.csv', 'rt') as f:
reader = csv.reader(f)
for row in reader:
str(row)
x=';'.join(row)
for row2 in x:
y=' '.join(row)
print (y.split(" "))
第 1 期:此 returns 输出是 CSV 文件中包含的行的 returns 60 倍。我无法理解为什么。你能帮忙吗?
第 2 期:非常感谢您提供的信息,以便关联源 and/or 目标中的 IP 地址。
非常感谢任何帮助。
首先,您文件中的数据没有用逗号分隔,这意味着您只需在第二个循环中遍历所有字符即可。通过打印 row2
.
亲自查看
我相信您正在尝试为文件中的每一行数据打印出类似于 <fieldname>: <data>
的内容。
您不需要导入的模块。以下脚本工作正常。
with open('BE-E2_D1_Source.csv', 'r') as f:
lines = [i.strip() for i in f.readlines()]
header = lines[0].split(';')
rows = [i.split(';') for i in lines[1:]]
for row in rows:
for idx, field in enumerate(row):
print(f"{header[idx]}: {field}")
print()
我是 python 的新手,正在尝试创建一个 python3 脚本,该脚本接受 CSV 格式的输入(这是一个防火墙规则集):
Source;Destination;Service;Action;Comment
10.0.0.0/8 172.16.0.0/16 192.168.0.0/24 23.2.20.6;10.0.0.1 10.0.0.2 10.0.0.3;udp:53 tcp:53;accept;No.10: ID: INC0000000001
并关联其中包含的 IP。
我创建了以下基地:
import ipaddress
import csv
with open('BE-E2_D1_Source.csv', 'rt') as f:
reader = csv.reader(f)
for row in reader:
str(row)
x=';'.join(row)
for row2 in x:
y=' '.join(row)
print (y.split(" "))
第 1 期:此 returns 输出是 CSV 文件中包含的行的 returns 60 倍。我无法理解为什么。你能帮忙吗?
第 2 期:非常感谢您提供的信息,以便关联源 and/or 目标中的 IP 地址。
非常感谢任何帮助。
首先,您文件中的数据没有用逗号分隔,这意味着您只需在第二个循环中遍历所有字符即可。通过打印 row2
.
我相信您正在尝试为文件中的每一行数据打印出类似于 <fieldname>: <data>
的内容。
您不需要导入的模块。以下脚本工作正常。
with open('BE-E2_D1_Source.csv', 'r') as f:
lines = [i.strip() for i in f.readlines()]
header = lines[0].split(';')
rows = [i.split(';') for i in lines[1:]]
for row in rows:
for idx, field in enumerate(row):
print(f"{header[idx]}: {field}")
print()