在Python的csv文件中搜索单词/短语

问题描述 投票:0回答:1

我有一个csv格式的推文数据库,看起来像这样-screen of csv database-我需要使用Python代码对此文件执行以下任务:

搜索推文中的某些单词/短语(一条推文的文本在C列中,如果该推文中包含我要查找的单词/短语,我需要将此推文的整行写到新的csv中文件

并且(如果可能)从旧的csv文件中删除此tweet或创建一个不包含该tweet的新消息。

我希望我说清楚。

python csv twitter
1个回答
0
投票
您可以使用csv库读取文件并一次在每一行上进行搜索。

import csv with open('out.csv', 'w', newline='') as output_file: writer = csv.writer(output_file, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL) with open('test.csv') as csv_file: csv_read = csv.reader(csv_file, delimiter=',') for row in csv_read: if "a" in row[2]: writer.writerow(row)

这里是python文档的链接:https://docs.python.org/3/library/csv.html。希望这会有所帮助。

编辑:如果要多个搜索词,请在列表理解中使用any()。

import csv with open('out.csv', 'w', newline='') as output_file: writer = csv.writer(output_file, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL) with open('input.csv') as csv_file: csv_read = csv.reader(csv_file, delimiter=',') for row in csv_read: search_terms = ["term1", "term2"] if any([term in row[2] for term in search_terms]): writer.writerow(row)

© www.soinside.com 2019 - 2024. All rights reserved.