CSV文件简介
来源:互联网 发布:怎么更改软件版本号 编辑:程序博客网 时间:2024/06/11 04:55
"CSV" 是逗号分隔文件 (Comma Separated Values) 的首字母英文缩写,是一种用来存储数据的纯文本格式,通常用于电子表格或数据库软件。在 CSV 文件中,数据“栏”以逗号分隔,可允许程序通过读取文件为数据重新创建正确的栏结构,并在每次遇到逗号时开始新的一栏。csv文件可以使用记事本或excel软件打开,excel软件会自动按照csv文件规则加载csv文件。
1、CSV文件规范:
1)、使用回车换行(两个字符)作为行分隔符,最后一行数据可以没有这两个字符。
2)、标题行是否需要,要双方显示约定
3)、每行记录的字段数要相同,使用逗号分隔。逗号是默认使用的值,双方可以约定别的。
4)、任何字段的值都可以使用双引号括起来. 为简单起见,可以要求都使用双引号。
5)、字段值中如果有换行符,双引号,逗号的,必须要使用双引号括起来。这是必须的。
6)、如果值中有双引号,使用一对双引号来表示原来的一个双引号
2、使用csv模块读取csv文件:
>>import csv
#将要存储的数据
DATA = (
(11, '12', '32——1'),
(21, '22', '22——1, 22——2',),
(31, '32', '32——1, 32——2,'),
)
#将数据写到csv
>>f = open('test.csv', mode='w',encoding='gbk',newline='') #mode:写入模式,采用b的方式处理可以省去很多问题。encoding:编码方式。newline='':定义定义文档换行符
>>writer = csv.writer(f) #获取输出数据流
>>for record in DATA: #遍历写入每一行
#csv模块会将所有要写入的对象转化为字符串再写入。若转化后的字符串中不包含分割符(默认逗号),则写入文件中字符串不包含""。若转化后的字符串中包含分割符(默认逗号),则写入文件中字符串包含""
writer.writerow(record) #按行写入文件,会自动将元素对象转化为字符串。写完一行就会添加一个newline换行符。若采用b模式写入,只能写入字节流。
>>f.close()
#读取csv
>>f = open('test.csv',mode='r',encoding='gbk') #mode读取模式,采用b的方式处理可以省去很多问题,encoding编码方式
>>reader = csv.reader(f) #获取输入数据。把每一行数据转化成了一个list,list中每个元素是一个字符串
>>for row in reader: #按行读取文件。一行读取为字符串,在使用分割符(默认逗号)分割成字符串列表,对于包含逗号,并使用""标志的字符串不进行分割
print(row)
print(type(row))
>>f.close()
3、使用pandas读取csv文件:
>>import pandas as pd
#pandas将数据写入csv文件
>>DATA = {
'english': ['one','two','three'],
'number': [1,2,3]
}
>>save = pd.DataFrame(DATA,index=['row1','row2','row3'],columns=['english','number'])
>>print(save)
>>save.to_csv('test1.csv',sep=',')
#pandas读取csv
#sep分隔符,encoding编码,header=None自动列名,names自定义列名
#index_col作为行索引的列(主键),skiprows跳过行索引,na_values缺失值的替代字符串
>>df = pd.read_csv('test1.csv',sep=',',encoding='gbk',names=['column1','column2','column3'],index_col=['column1'],skiprows=[0],na_values=['NULL'])
>>print(df)
- csv文件简介
- csv文件简介
- CSV文件简介
- CSV文件简介
- CSV文件简介
- CSV 文件
- csv文件
- CSV文件
- CSV文件
- csv文件
- CSV文件
- csv文件
- CSV文件
- CSV文件
- Python CSV模块简介
- Python CSV模块简介
- Python CSV模块简介
- commons-csv读写CSV文件
- WEB缓存_如何解决缓存的一致性和实时性
- 【工具使用】持续集成工具----Jenkins
- HTML之交互式表单
- ubuntu安装vnc server-x11vnc并设置开机自动启动
- (未完待续)
- CSV文件简介
- nginx 安装
- 蓝桥杯: 完美的代价
- Retrofit的简单使用
- 工厂模式浅析
- Ubuntu 14.04安装SecureCRT 8.0.0
- 天梯赛-L3-004. 肿瘤诊断(三维空间+广搜)
- 在排序好的数组中添中一个数字
- GithubPages教程 在GithubPages上搭建个人主页