Python 编写 CSV 文件 CSV 文件 CSV 代表“逗号分隔值”,它被定义为一种简单的文件格式,使用特定的结构来排列表格数据。它以纯文本存储表格数据,如电子表格或数据库,并具有数据交换的标准格式。CSV 文件在 excel 工作表中打开,行和列数据定义了标准格式。
Python CSV 模块函数 CSV 模块的工作是处理 CSV 文件,以便从指定的列中读取/写入和获取数据。CSV 函数有不同的类型。
编写 CSV 文件 我们还可以使用 csv.writer()模块用 Python 编写任何新的和现有的 CSV 文件。它类似于 csv.reader()模块,也有两种方法,即 writer 函数或 Dict Writer 类。
它呈现两个功能,即 writerow() 和writerows() 。 writerow() 函数只写一行,而**writerows()**函数写多行。方言
它被定义为允许您创建、存储和重用各种格式参数的构造。它支持几个属性;最常用的是:
Dialect.delimiter: 该属性用作字段之间的分隔字符。默认值是逗号(,)。
Dialect.quotechar: 此属性用于引用包含特殊字符的字段。
Dialect.lineterminator: 用于新建线路,默认值为’ \r\n '。
让我们将以下数据写入 CSV 文件。
data = [{'Rank' : 'B' , 'first_name' : 'Parker' , 'last_name' : 'Brian' }, {'Rank' : 'A' , 'first_name' : 'Smith' , 'last_name' : 'Rodriguez' }, {'Rank' : 'C' , 'first_name' : 'Tom' , 'last_name' : 'smith' }, {'Rank' : 'B' , 'first_name' : 'Jane' , 'last_name' : 'Oscar' }, {'Rank' : 'A' , 'first_name' : 'Alex' , 'last_name' : 'Tim' }]
示例- import csv with open ('Python.csv' , 'w' ) as csvfile: fieldnames = ['first_name' , 'last_name' , 'Rank' ] writer = csv.DictWriter(csvfile, fieldnames=fieldnames) writer.writeheader() writer.writerow({'Rank' : 'B' , 'first_name' : 'Parker' , 'last_name' : 'Brian' }) writer.writerow({'Rank' : 'A' , 'first_name' : 'Smith' , 'last_name' : 'Rodriguez' }) writer.writerow({'Rank' : 'B' , 'first_name' : 'Jane' , 'last_name' : 'Oscar' }) writer.writerow({'Rank' : 'B' , 'first_name' : 'Jane' , 'last_name' : 'Loive' }) print ("Writing complete" )
输出:
它返回名为“Python.csv”的文件,其中包含以下数据:
first_name,last_name,Rank Parker,Brian,B Smith,Rodriguez,A Jane,Oscar,B Jane,Loive,B
将 CSV 写入字典 我们也可以使用类 DictWriter 将 CSV 文件直接写入字典。
名为 python.csv 的文件包含以下数据:
帕克,会计,11 月
史密斯,信息技术,10 月
示例- import csv with open ('python.csv' , mode='w' ) as csv_file: fieldnames = ['emp_name' , 'dept' , 'birth_month' ] writer = csv.DictWriter(csv_file, fieldnames=fieldnames) writer.writeheader() writer.writerow({'emp_name' : 'Parker' , 'dept' : 'Accounting' , 'birth_month' : 'November' }) writer.writerow({'emp_name' : 'Smith' , 'dept' : 'IT' , 'birth_month' : 'October' })
输出:
emp_name,dept,birth_month Parker,Accounting,November Smith,IT,October
用 Pandas 编写 CSV 文件 Pandas 被定义为建立在 Numpy 库之上的开源库。它为用户提供快速分析、数据清理和数据准备。
就像用 Pandas 读 CSV 文件一样简单。您需要创建 DataFrame,它是一个二维、异构的表格数据结构,由三个主要组件组成——数据、列和行。在这里,我们要读取一个稍微复杂一点的文件,名为 hrdata.csv,其中包含公司员工的数据。
Name,Hire Date,Salary,Leaves Remaining John Idle,08/15 /14 ,50000.00 ,10 Smith Gilliam,04/07/15 ,65000.00 ,8 Parker Chapman,02/21 /14 ,45000.00 ,10 Jones Palin,10 /14 /13 ,70000.00 ,3 Terry Gilliam,07/22 /14 ,48000.00 ,7 Michael Palin,06/28 /13 ,66000.00 ,8
示例- import pandas df = pandas.read_csv('hrdata.csv' , index_col='Employee' , parse_dates=['Hired' ], header=0 , names=['Employee' , 'Hired' , 'Salary' , 'Sick Days' ]) df.to_csv('hrdata_modified.csv' )
输出:
Employee, Hired, Salary, Sick Days John Idle, 2014 -03-15 , 50000.0 ,10 Smith Gilliam, 2015 -06-01, 65000.0 ,8 Parker Chapman, 2014 -05-12 , 45000.0 ,10 Jones Palin, 2013 -11 -01, 70000.0 ,3 Terry Gilliam, 2014 -08-12 , 48000.0 ,7 Michael Palin, 2013 -05-23 , 66000.0 ,8
原文:https://www.javatpoint.com/python-write-csv-file