Python - 读取文本并写入 csv。将空列替换为默认 'N/A' 值

Python - Read text and write into csv. Replace empty columns as a default 'N/A' value

我有一个 txt 文件,'iteration.txt'。 我只想抓取'Section'后的数据写入csv.
'Section A' 有 2 个输入和输出。 'Section B' 没有输入和输出,我想将 'N/A' 放在空列中。

'iteration.txt'

Input-> 000
Output-> 000
Codex153 @ Section_A_Iterating
Input-> 101
Output-> 010
unwanted data
Input-> 320
Output-> 321
unwanted data
Codex173 @ Section_B_Extracting
Codex183 @ Section_C_Iterating
unwanted data
unwanted data
Input->011
Output-> 011

我完成的代码:

with open('iteration.csv', 'w') as writer:
    flag = False
    writer.write ('Section,Input,Output'+'\n')
    for eachline in open('iteration.txt').readlines():

        if 'Section' in eachline:
            flag = True
            writer.write (eachline.split()[-1]+'\n')
            #print (section_list)

        if flag:
            if 'Input' in eachline:
                writer.write (eachline.strip() + '\n')

            if 'Output' in eachline:
                writer.write(eachline.strip() + '\n')

上面代码的 Csv 输出:

预期的 csv 数据:

抱歉,我是新手,我不太确定如何将 'N/A' 放在空列中,以及如何根据各自的 headers 放置数据。有什么简单的方法可以做到这一点,最好不要过多更改上面的代码? 谢谢!

使用函数 .fillna('N/A') 您可以填充空值或不存在的值。