读取CSV文件并将其插入python中的2d列表

paf*_*paf 8 python csv multidimensional-array

我想在Python中将CSV文件的数据(网络数据,如:时间,IP地址,端口号)插入到2D列表中.

这是代码:

import csv
datafile = open('a.csv', 'r')
datareader = csv.reader(datafile, delimiter=';')
data = []
for row in datareader:
    data.append(row)    
print (data[1:4])
Run Code Online (Sandbox Code Playgroud)

结果是:

[['1', '6', '192.168.4.118', '1605', '', '115.85.145.5', '80', '', '60', '0.000000000', '0x0010', 'Jun 15, 2010 18:27:57.490835000', '0.000000000'], 
['2', '6','115.85.145.5', '80', '', '192.168.4.118', '1605', '', '1514', '0.002365000', '0x0010', 'Jun 15, 2010 18:27:57.493200000', '0.002365000'], 
['3', '6', '115.85.145.5', '80', '', '192.168.4.118', '1605', '', '1514', '0.003513000', '0x0018', 'Jun 15, 2010 18:27:57.496713000', '0.005878000']]
Run Code Online (Sandbox Code Playgroud)

但它只是一个维度,我不知道如何创建2D数组并将每个元素插入到数组中.

请建议我为此目的使用什么代码.(我查看了网站上的先前提示,但没有一个对我有用)

Kar*_*bet 11

这是一种从CSV获取2D数组的简洁方法,它也适用于较旧的Python版本:

import csv
data = list(csv.reader(open(datafile)))
print(data[1][4])
Run Code Online (Sandbox Code Playgroud)


Den*_*kva 6

您已经有了列表列表,它是一种二维数组,您可以像使用 data[1][1] 等一样对其进行寻址。