2024-09-26 18:09:57 发布
网友
我有一个关于Python与CSV结合的问题。在
我想检查CSV文件中特定列中的特定id,并发现结果连接到输入:
CSV:
我想做的是当用户输入:b074时,我想返回所有结果:b00ph,b11ph,b22ph,b33ph
如何在Python中做到这一点?有人能帮我编码吗?我从这个开始:
with open('serials.csv') as csvfile: csvreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
因为您似乎想要使用CSV模块,所以可以使用列表理解来过滤CSV文件中的行。下面,将第0列(第[0]行)中的项与键值(b074)进行比较。如果它们匹配,则将第1列添加到列表理解的结果中。在
import csv key = 'b0074' with open('serials.csv') as csvfile: reader = csv.reader(csvfile, delimiter=' ', quotechar='|') result = [row[1].strip() for row in reader if row[0].strip() == key] >>> result ['b00ph', 'b11ph', 'b22ph', 'b33ph']
这相当于循环的“正常”:
使用pandas可以轻松实现这一点:
import pandas as pd df = pd.read_csv(csvfile, sep=' ', quotechar='|') df[df['Row1'] == 'b0074']
将筛选数据帧并返回“Row1”具有该值的所有行
因为您似乎想要使用CSV模块,所以可以使用列表理解来过滤CSV文件中的行。下面,将第0列(第[0]行)中的项与键值(b074)进行比较。如果它们匹配,则将第1列添加到列表理解的结果中。在
这相当于循环的“正常”:
^{pr2}$使用pandas可以轻松实现这一点:
将筛选数据帧并返回“Row1”具有该值的所有行
相关问题 更多 >
编程相关推荐