处理从 csv 获取值并将它们在一个句子中写入新 csv 的东西:
import csv
with open('Links.csv', 'rb') as input_file, \
open('Link Statements.csv', 'w') as output_file:
reader = csv.reader(input_file, delimiter=',', quoting=csv.QUOTE_NONE)
for row in reader:
link_name, from_unit, to_unit, rate, type = row
output_file.write(" %s," % (from_unit))
output_file.write("Establish %s link %s at %s Kbps to %s.\n" % (type, link_name, rate, to_unit))
output_file.write(" %s," % (to_unit))
output_file.write("Terminate %s link %s at %s Kbps from %s.\n" % (type, link_name, rate, from_unit))
这需要以下内容:
MPP01,RCT-6,1/6,14336,LOS UHF MCR
SIPRPP01,RCT-6,1/6,8192,SIPRNET
NIPRPP02,RCT-6,2/6,4096,NIPRNET
BSPEPP03,RCT-6,1/10,472,BSPE
DPV0PP04,1/10,2/6,472,DPV0
SIPRPP04,1/6,1/3,8192,SIPRNET
NIPRPP03,1/6,1/10,8192,NIPRNET
SIPRPP03,3/6,1/10,4096,NIPRNET
NIPRZP01,MEB,RCT-6,8192,NIPRNET
SIPRZP01,MEB,RCT-6,4096,SIPRNET
并将其写入一个新文件:
RCT-6,Establish LOS UHF MCR link MPP01 at 14336 Kbps to 1/6.
1/6,Terminate LOS UHF MCR link MPP01 at 14336 Kbps from RCT-6.
RCT-6,Establish SIPRNET link SIPRPP01 at 8192 Kbps to 1/6.
1/6,Terminate SIPRNET link SIPRPP01 at 8192 Kbps from RCT-6.
RCT-6,Establish NIPRNET link NIPRPP02 at 4096 Kbps to 2/6.
2/6,Terminate NIPRNET link NIPRPP02 at 4096 Kbps from RCT-6.
RCT-6,Establish BSPE link BSPEPP03 at 472 Kbps to 1/10.
1/10,Terminate BSPE link BSPEPP03 at 472 Kbps from RCT-6.
1/10,Establish DPV0 link DPV0PP04 at 472 Kbps to 2/6.
2/6,Terminate DPV0 link DPV0PP04 at 472 Kbps from 1/10.
1/6,Establish SIPRNET link SIPRPP04 at 8192 Kbps to 1/3.
1/3,Terminate SIPRNET link SIPRPP04 at 8192 Kbps from 1/6.
1/6,Establish NIPRNET link NIPRPP03 at 8192 Kbps to 1/10.
1/10,Terminate NIPRNET link NIPRPP03 at 8192 Kbps from 1/6.
3/6,Establish NIPRNET link SIPRPP03 at 4096 Kbps to 1/10.
1/10,Terminate NIPRNET link SIPRPP03 at 4096 Kbps from 3/6.
MEB,Establish NIPRNET link NIPRZP01 at 8192 Kbps to RCT-6.
RCT-6,Terminate NIPRNET link NIPRZP01 at 8192 Kbps from MEB.
MEB,Establish SIPRNET link SIPRZP01 at 4096 Kbps to RCT-6.
RCT-6,Terminate SIPRNET link SIPRZP01 at 4096 Kbps from MEB.
我正在尝试根据哪些任务针对哪些单元将语句分组在一起 - 我通过在第一列中编写相关单元来完成这一点,然后我可以在 excel 中手动排序以将相关任务组合在一起到每个单位。
有没有办法让程序在将数据写入新的 csv 时对数据进行排序?或者有没有办法可以像这样对它们进行分组:
1/6
Terminate...
Establish...
2/6
Terminate...
Establish...
Establish...
3/6
Terminate...
Terminate...
我很感激我能得到的任何帮助。