首页 > 解决方案 > 如何将输入文件中列的所有值存储在列表中

问题描述

我想将输入文件中的所有第 2 列值存储到列表中,以便我可以将这些值作为参数传递给脚本中的另一个命令。

截至目前,使用当前代码,我在列表(interface_list)中只得到最后一个插入值“2”,因此我只能将一个值传递给另一个命令。

输入文件 :

ipaddress,intefaceid
10.170.15.16,1
10.170.15.20,3
10.170.15.20,4
10.170.15.30,2
10.170.15.16,2

代码 :

import csv
def load_interfaces(ip):
    f = open("ip_interface_map.csv", "r")
    reader = csv.reader(f)
    next(reader)
    for line in reader:
        if ip in line:
            interface_list = []
            interface_list.append(line[1])
            print interface_list
#        return interface_list
load_interfaces('10.170.15.16')

标签: pythonscriptingpython-2.6

解决方案


我认为您可以通过将interface_list = []for 循环放在外部来完成它。

...
interface_list = []
for line in reader:
    if ip in line:
        interface_list.append(line[1])
        ...

推荐阅读