如何使用python使用上一列中的关键字向csv文件添加列?

时间:2016-07-01 01:18:12

标签: python regex csv

道歉,如果我没有正确地说出我的问题。我目前有一个包含2列数据的csv文件。我想添加带有关键字的第三列(来自我拥有的单词库),只要在第二列中找到该关键字。如果第二列中没有来自单词bank的单词,那么我只想按行写入行。在下面的示例中,第三列仅包含单词" green"和"红色"因为这些单词在单词bank和文件的第二列中:

wordbank = ["blue", "red", "green"]

apple  | "The color is green" |  green

orange | "The color is orange" | 

berry  | "Yes, red is the color"   | red    

我考虑过使用正则表达式但是不确定如何去做。我的代码目前看起来像这样,但我是python的新手,想知道是否有更简单/更合理的方式来解决这个问题。

wordbank=["green", "blue", "gold", "red", "pink"]

rowswwords = []

with open("input.csv", mode='r') as csv_input: 
    with open("output.csv", 'wb') as csv_output: 
        writer = csv.writer(csv_output)
        for row in csv.reader(csv_input): 
            for word in wordbank:
                if word in row[1]: 
                    writer.writerow(row+[word]) 
                    rowswwords.append(row)
                    break
            if row not in rowswwords:
                writer.writerow(row+[""])

非常感谢你的帮助!

0 个答案:

没有答案