python实现csv文件条查询

前言

本文主要介绍通过Python提取csv文件中数据,并对数据进行处理,及查询。
编译器:pycharm  语言:Python3

一、使用pandas和numpy库

通过pandas库可以从csv提取到数据,但是数据的格式是DateFrame 格式,因为我不懂怎么处理DateFrame 格式的数据,所以就使用numpy库,将提取的数据转化为数组格式,这样可以就可以通过对数组的处理方式处理csv文件的数据。写回csv文件的过程中,再转换为DateFrame即可。
 

二、使用步骤

1、引入库

import pandas as pd
import numpy as np

 2、读入数据

本文是通过相对路径读取的文件。如果想通过文件名读取,需要把文件放与程序放到同一个文件夹中
代码如下(示例):

file = pd.read_csv('裁判书.csv',encoding='gbk')

此时读出的数据是DateFrame格式,输出如下

python实现csv文件条查询_第1张图片

 

3.转化格式

将DateFrame 格式的数据转化为数组

file1 = np.array(file)

4.处理数据

我们将所有符合查询的数据挑选出来,并放入新的数组中

key = input("请输入需要查询的文书或案件类型或发布日期例如2021/1/12:")
file = pd.read_csv('裁判书.csv',encoding='gbk')
file1 = np.array(file)
data = []
    for item in file1:
        title = item[0]
        type = item[3]
        date = item[5]
        # 查询标题,或案件类型,或发布时间
        if key == title or key == type or key == date:
            data.append(item)
    for i in data:
        res = str(i[6])
        str1 = res.replace('\n','') # 去除换行符
        if key == i[0]:
            print(f'<<<<标题:{i[0]} 法院:{i[1]} 刊号:{i[2]} 案件类型1:{i[3]} 案件类型2:{i[4]} 发布日期:{i[5]}裁判内容:{str1}>>>>')
        elif key == i[3]:
            print(f'<<<<案件类型1:{i[3]} 标题:{i[0]} 法院:{i[1]} 刊号:{i[2]} 案件类型2:{i[4]} 发布日期:{i[5]} 裁判内容:{str1}>>>>')
        elif key == i[5]:
            print(f'<<<<发布时间:{i[5]} 标题:{i[0]} 法院:{i[1]} 刊号:{i[2]} 案件类型2:{i[4]} 案件类型1:{i[3]} 裁判内容:{str1}>>>>')

你可能感兴趣的:(python,开发语言)