我想在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数组并将每个元素插入到数组中.
请建议我为此目的使用什么代码.(我查看了网站上的先前提示,但没有一个对我有用)
假设我们有2个相等大小的二进制.
A=101011110000
B=000010101111
Run Code Online (Sandbox Code Playgroud)
我们如何根据类似的位置检查他们的"R"连续匹配?
例如,如果我们设置r = 4,则结果将为假,因为没有4个连续的位置相似性.两个字符串都有0000或1111或1010,但它们不在相似的位置.
但是,如果我们设置:
A=1010111101111
B=1100101011111
Run Code Online (Sandbox Code Playgroud)
结果将为真,因为两个字符串中的最后4个字符(R)等于"1111".
最快的方法是什么?我找到了一个快速解决方案:http: //www.mathworks.com/matlabcentral/answers/257051-fast-r-contiguous-matching
bin = 2.^(0:r - 1);
A2 = filter(bin, 1, A == '1');
B2 = filter(bin, 1, B == '1');
bool = any(ismember(A2(r:end), B2(r:end))); % need to trim first r-1 entries
Run Code Online (Sandbox Code Playgroud)
但在此解决方案中,检查相似性不是基于位置.
如何使用psutil库获取Windows平台中单个进程已使用的内存量?(我不想有百分比,我想知道字节数)
我们可以用:
psutil.virtual_memory().used
Run Code Online (Sandbox Code Playgroud)
要找到整个操作系统的内存使用量(以字节为单位),那么每个进程如何?
谢谢,