python3.6-python对CSV文件的读写

什么是CSV文件:

CSV是Comma-Separated Values的缩写,是用文本形式储存的表格数据(当用Excel表格打开文件时)例如下表:
这里写图片描述
CSV文件内容中,用逗号分割值,可以用Excel打开查看,由于是纯文本,任何编辑器也都可以打开,与Excel文件不同,CSV文件中:
1.值没有类型,所有值都是字符串
2.不能指定字体颜色等样式
3.不能指定单元格的宽高,不能合并单元格
4.没有多个工作表
5.不能嵌入图表

在python中做什么用:

我们常常需要读取和处理csv文件的数据。处理csv数据的一个最有用的方法就是把它转换为一个字典列表。

一、读文件:

CSV模块是python的内置模块,直接调用import csv 就可以对其操作

import csv

Dict = csv.DictReader(open('CSV.csv','rU'))
print(type(Dict))
print(Dict)
for d in Dict:
    print(d)

执行命令得

<class 'csv.DictReader'>

<csv.DictReader object at 0x00000068DF9ABBE0>
OrderedDict([('1', 'a'), ('2', 'b'), ('3', 'c'), ('4', 'd'), ('5', 'e')])

解释:csv.DictReader(open(‘CSV.csv’,’rU’))

csv.DictReader() 调用读取方法

open(‘CSV.csv’,’rU’) 打开一个名为CSV.csv的文件,文件是自己创建的,rU表示读取,‘r’表示以读模式打开文件。‘U’表明我们将会接受通用换行符–‘n’,‘r’和‘rn’

改造代码:(由2行变成3行)
这里写图片描述

import csv

Dict = csv.DictReader(open('CSV.csv','rU'))
print(type(Dict))
print(Dict)

for d in Dict:
    for e in d.values():   #注意此处为d.values,因为遍历Dict后得到的是一个字典
        print(e)

执行命令得

<class 'csv.DictReader'>

<csv.DictReader object at 0x000000D7691EBC18>
a b c d e    aaa bbb ccc ddd eee 

看看如果直接用d会打印什么?

import csv

Dict = csv.DictReader(open('CSV.csv','rU'))
print(type(Dict))
print(Dict)

for d in Dict:
    for e in d:
        print(e,end=' ')

执行命令得

<class 'csv.DictReader'>
<csv.DictReader object at 0x000000C94089BC18>
1 2 3 4 5    1 2 3 4 5 
#全是key值

DictReader类将会自动地使用csv文件的第一行作为字典的key属性名。DictReader类返回一个将会遍历csv文件所有行的对象。这个文件对象通过open()函数产生。

猜你喜欢

转载自blog.csdn.net/weixin_42067855/article/details/80520127