当前我正在尝试保存格式为bitrateListEqualized
的列表:
[[2.221408], ['Wed Oct 2 11:05:28 2019']]
[[2.347744], ['Wed Oct 2 11:05:29 2019']]
[[2.47408], ['Wed Oct 2 11:05:30 2019']]
使用以下代码.csv
文件:
with open("/home/user/bitrateFolder/Bitrate_history_ip_{}:{}.csv".format(MCAST_GRP,MCAST_PORT,),"w+", newline='') as csvfile:
thewriter = csv.writer(csvfile, delimiter=',')
thewriter.writerow(['values','dates'])
for x in range(len(bitrateListEqualized)):
bitrateListEqualized[x][0][0] = bitrateListEqualized[x][0][0]*8/(SAMPLING_TIME*1000000)
data = [bitrateListEqualized[x]]
thewriter.writerow(data)
thewriter.writerow(max(bitrateListEqualized))
thewriter.writerow(min(bitrateListEqualized))
保存此列表的结果是:
values,dates
"[[10.73856], ['Wed Oct 2 11:11:23 2019']]"
"[[10.780672], ['Wed Oct 2 11:11:24 2019']]"
"[[10.73856], ['Wed Oct 2 11:11:25 2019']]"
"[[10.73856], ['Wed Oct 2 11:11:26 2019']]"
"[[10.759616000000001], ['Wed Oct 2 11:11:27 2019']]"
"[[10.73856], ['Wed Oct 2 11:11:28 2019']]"
"[[10.770143999999998], ['Wed Oct 2 11:11:29 2019']]"
"[[10.73856], ['Wed Oct 2 11:11:30 2019']]"
[10.780672],['Wed Oct 2 11:11:24 2019']
[10.73856],['Wed Oct 2 11:11:23 2019']
我希望.csv
文件如下所示:
values,dates
10.73856,Wed Oct 2 11:11:23 2019
10.780672,Wed Oct 2 11:11:24 2019
10.73856,Wed Oct 2 11:11:25 2019
10.780672,Wed Oct 2 11:11:24 2019
10.73856,Wed Oct 2 11:11:23 2019
你们能帮帮我吗?先谢谢你
在csv创建迭代之前,将您的列表转换为一个平面列表
输出
有两个问题需要解决:使用列表列表写入csv,并在最后对其进行排序
我想到的是:
我用下划线替换了您的“:”,因为我在编写文件路径时遇到了问题。 我遍历您的列表,对于
bilateralListEqualizer
中的每个元素,我得到element[0][0]
,值和element[1][0]
,日期。 这两个进入一个列表:[value, date]
,然后这个可以作为一行写入csv输出对于minmax,我从预期的输出中推断出来,并使用了一个额外的步骤:我按值对原始列表进行排序(使用
itemgetter
),并将最后一个(max value)和第一个(min value)元素写入csv排序的输出如下所示:
[[2.221408, 'Wed Oct 2 11:05:28 2019'], [2.347744, 'Wed Oct 2 11:05:29 2019'], [2.47408, 'Wed Oct 2 11:05:30 2019']]
如果你需要更多的细节,请告诉我
这是我得到的输出(忽略值的值,我创建了一个虚拟的
SAMPLING_TIME
):相关问题 更多 >
编程相关推荐