使⽤CSV模块和Pandas在Python中读取和写⼊CSV⽂件
什么是CSV⽂件?
CSV⽂件是⼀种纯⽂本⽂件,其使⽤特定的结构来排列表格数据。CSV是⼀种紧凑,简单且通⽤的数据交换通⽤格式。许多在线服务允许其⽤户将⽹站中的表格数据导出到CSV⽂件中。CSV⽂件将在Excel中打开,⼏乎所有数据库都具有允许从CSV⽂件导⼊的⼯具。标准格式由⾏和列数据定义。此外,每⾏以换⾏符终⽌,以开始下⼀⾏。同样在⾏内,每列⽤逗号分隔。
CSV样本⽂件。
表格形式的数据也称为CSV(逗号分隔值)-字⾯上是“逗号分隔值”。这是⼀种⽤于表⽰表格数据的⽂本格式。⽂件的每⼀⾏都是表的⼀⾏。各个列的值由分隔符-逗号(,),分号(;)或另⼀个符号分隔。CSV可以通过Python轻松读取和处理。
考虑以下Tabe
表数据
程式语⾔由...设计出现了延期
python吉多·范·罗苏姆(Guido van Rossum)1991年.py
JAVA詹姆斯·⾼斯林1995年.java
C ++⽐尼亚·斯特鲁斯特鲁普1983年.cpp
您可以在csv中表⽰此表,如下所⽰。
CSV数据
编程语⾔,设计者,出现,扩展
Python,Guido van Rossum,1991,.py
Java,James Gosling,1995,.java
C ++,Bjarne Stroustrup,1983,.cpp
如您所见,每⼀⾏都是换⾏符,每⼀列都⽤逗号分隔。
Python CSV模块
Python提供了⼀个CSV模块来处理CSV⽂件。要读取/写⼊数据,您需要遍历CSV⾏。您需要使⽤split⽅法从指定的列获取数据。
CSV模块功能
在CSV模块⽂档中,您可以到以下功能:
csv.field_size_limit –返回最⼤字段⼤⼩
<_dialect –获取与名称相关的⽅⾔
csv.list_dialects –显⽰所有已注册的⽅⾔
csv.writer –将数据写⼊csv⽂件
csv.unregister_dialect-删除与⽅⾔注册表名称关联的⽅⾔
csv.QUOTE_ALL-引⽤所有内容,⽆论类型如何。
csv.QUOTE_MINIMAL-引⽤带有特殊字符的字段
csv.QUOTE_NONNUMERIC-引⽤所有⾮数字值的字段
csv.QUOTE_NONE –在输出中不引⽤任何内容
csv.QUOTE_NONE –在输出中不引⽤任何内容
如何读取CSV⽂件
要从CSV⽂件读取数据,必须使⽤阅读器功能来⽣成阅读器对象。
开发阅读器功能是为了获取⽂件的每⼀⾏并列出所有列。然后,您必须选择想要变量数据的列。
听起来⽐它复杂得多。让我们看⼀下这个例⼦,我们会发现使⽤csv⽂件并不是那么困难。
#import necessary modulesimport csvwith open('X:\data.csv','rt')as f: data = ader(f) for row in data: print(row)
当您执⾏上述程序时,输出将是:
['Programming language; Designed by; Appeared; Extension']['Python; Guido van Rossum; 1991; .py']['Java; James Gosling; 1995; .java']['C++; Bjarne Stroustrup;1983;.cpp']
如何将CSV阅读为词典
您也可以使⽤DictReader读取CSV⽂件。结果被解释为字典,其中标题⾏是键,其他⾏是值。
考虑以下代码
#import necessary modulesimport csvreader = csv.DictReader(open("file2.csv"))for raw in reader: print(raw)
此代码的结果是:
OrderedDict([('Programming language', 'Python'), ('Designed by', 'Guido van Rossum'), (' Appeared', ' 1991'), (' Extension', '
.py')])OrderedDict([('Programming language', 'Java'), ('Designed by', 'James Gosling'), (' Appeared', ' 1995'), (' Extension', '
.
java')])OrderedDict([('Programming language', 'C++'), ('Designed by', ' Bjarne Stroustrup'), (' Appeared', ' 1985'), (' Extension', ' .cpp')])
使⽤Pandas读取CSV⽂件
Pandas是⼀个开源库,可让您使⽤Python执⾏数据操作。熊猫提供了⼀种创建,操作和删除数据的简便⽅法。
您必须使⽤命令<code> pip install pandas </ code>安装pandas库。在Windows中,在Linux的终端中,您将在命令提⽰符中执⾏此命令。
将CSV读取到pandas DataFrame中⾮常快速且容易:
#import necessary modulesimport pandasresult = ad_csv('X:\data.csv')print(result)
结果:
Programming language, Designed by, Appeared, Extension 0 Python, Guido van Rossum, 1991, .py1 Java, James Gosling, 1995, .java2 C++, Bjarne Stroustrup,1983,.cpp
⾮常有⽤的库。在仅三⾏代码中,您将获得与之前相同的结果。熊猫知道CSV的第⼀⾏包含列名,它将⾃动使⽤它们。
⽤Pandas写⼊CSV⽂件
使⽤Pandas写⼊CSV⽂件就像阅读⼀样容易。您可以在这⾥说服。⾸先,您必须基于以下代码创建DataFrame。
from pandas import DataFrameC = {'Programming language': ['Python','Java', 'C++'], 'Designed by': ['Guido van Rossum', 'James Gosling', 'Bjarne Stroustrup'], 'Appeared': ['1991', '1995', '1985'], 'Extension': ['.py', '.java', '.cpp'], }df = DataFrame(C, columns= ['Programming language', 'Designed by',
'Appeared', 'Extension'])export_csv = df.to_csv (r'X:\pandaresult.csv', index = None, header=True) # here you have to write path, where result file will be storedprint (df)
这是输出
Programming language, Designed by, Appeared, Extension0 Python, Guido van Rossum, 1991, .py1 Java, James Gosling, 1995, .java2 C++, Bjarne Stroustrup,1983,.cpp
并在指定位置创建CSV⽂件。
python怎么读csv数据结论
因此,现在您知道如何使⽤⽅法“ csv”以及以CSV格式读取和写⼊数据。CSV⽂件易于读取和管理,并且尺⼨较⼩,因此相对较快地进⾏处理和传输,因此在软件应⽤程序中得到了⼴泛使⽤。
csv模块提供了各种功能和类,使您可以轻松地进⾏读写。您可以查看Python的官⽅⽂档,并到更多有趣的技巧和模块。CSV是保存,查看和发送数据的最佳⽅法。实际上,它并不像开始时那样难学。但是只要稍作练习,您就可以掌握它。
Pandas是读取CSV⽂件的绝佳选择。
另外,还有其他⽅法可以使⽤ANTLR,PLY和PlyPlus之类的库来解析⽂本⽂件。它们都可以处理繁重的解析,并且如果简单的String操作不起作⽤,则可以使⽤正则表达式。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论