首页 > 编程语言 >python读取csv文件

python读取csv文件

时间:2022-08-28 10:23:51浏览次数:84  
标签:读取 no python age 111 address line csv

参考此贴:csv格式文件之csv.DictReader()方法_booze-J的博客-CSDN博客_csv.dictreader

官方帮助:csv — CSV File Reading and Writing — Python 3.10.6 documentation

csv文件中的数据如下

no,address,age
1,111,12
2,111,13
3,111,14
4,111,15
5,111,16
6,111,17
7,111,18
8,111,19
9,111,20
10,111,21
11,111,22
12,111,23

1、首先引入csv包

2、使用with打开csv文件(可以自动关闭,不用close)

3、使用fieldnames来读取相应列,否则的话是所有列都读取,当然还可以使用lrestval='others'用来指定键对应值为空时的默认值,并且要注意restval也只能传入一个值,不能传入列表,元组数据类型

4、使用next方法移动指针到第二行(第一行为表头)

5、使用循环读取一行,并使用关键词来获得相应的值,如果你Print(line)的话就会发现每行其实是一个字典的形式

{'no': '1', 'address': '111', 'age': '12'}
1 111 12
{'no': '2', 'address': '111', 'age': '13'}
2 111 13
{'no': '3', 'address': '111', 'age': '14'}
3 111 14
{'no': '4', 'address': '111', 'age': '15'}
4 111 15
{'no': '5', 'address': '111', 'age': '16'}
5 111 16
{'no': '6', 'address': '111', 'age': '17'}
6 111 17
{'no': '7', 'address': '111', 'age': '18'}
7 111 18
{'no': '8', 'address': '111', 'age': '19'}
8 111 19
{'no': '9', 'address': '111', 'age': '20'}
9 111 20
{'no': '10', 'address': '111', 'age': '21'}
10 111 21
{'no': '11', 'address': '111', 'age': '22'}
11 111 22
{'no': '12', 'address': '111', 'age': '23'}
12 111 23

具体代码如下

import csv
import numpy as np
with open('./test.csv') as csv_file:
    csv_reader = csv.DictReader(csv_file, fieldnames=['no', 'address', 'age'])
    row = next(csv_reader)

    for line in csv_reader:
        # print(line)
        print(line['no'], line['address'], line['age'])

  

标签:读取,no,python,age,111,address,line,csv
From: https://www.cnblogs.com/dogingate/p/16632299.html

相关文章

  • Python random 的使用
    导入importrandom 随机数生成//用来生成[a,b]之间的随意整数,包括两个边界值。print(random.randint(0,9))//用来随机生成一个0到1之间的浮点数,包括零。0.15790......
  • Python 报错:json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char
    报错内容:json.decoder.JSONDecodeError:Expectingvalue:line1column1(char0) 报错代码:print(res.json()) 报错原因:打印请求返回值报错该接口返回值......
  • python before_request详解
    before_request顾名思义,就是在request请求之前做的事情。它会在每一个请求来的时候,都会先去请求before_request注册的函数。before_request需要注册一个函数,可以不需要参......
  • python after_request详解
    after_request是在每一个请求结束之后,再请求的一个钩子函数。它需要有一个参数接收请求的响应。这个示例是使用after_request,对每一个请求后的响应进行分类,从而在请求完成......
  • python文件操作 r w a
    文件操作创建文件"asdf.txt"open()#打开file#文件的位置(路径)mode#操作文件的模式encoding#文件编码方......
  • Python_for_else
    循环“自然”终结(循环条件为假)时else从句会被执行一次,而当循环是由break语句中断时,else子句就不被执行。与for语句相似,while语句中的else子句的语意是一样的∶else块在......
  • python之数据类型转换
    一、隐式类型转换隐式类型转换-自动完成我们对两种不同类型的数据进行运算,较低数据类型(整数)就会转换为较高数据类型(浮点数)以避免数据丢失num_int=123num_flo=1.2......
  • Python-——面向对象
    面向对象编程范式面向对象指的是一种编程范式;编程范式:可以理解为一种编程方式,编程规范,编程模式面向过程面向过程编程:是一种以过程为核心的编程,主要是在解决一个问题......
  • python中encode+decode编码解码
    encode()方法的语法格式:str.encode([encoding="utf-8"][,errors="strict"])decode()方法的语法格式:bytes.decode([encoding="utf-8"][,errors="strict"]) m="以心......
  • python 报错 most likely due to a circular import 解决方法
    原因各个python文件,互相引用,造成的循环引用问题。解决方法:把需要引用的独立成一个文件,让其单向引用使用python写一个稍微大一点的工程时,经常会遇到循环import,即cicular......