什么是CSV文件?
CSV文件是一种纯文本文件,其使用特定的结构来排列表格数据。 CSV是紧凑,简单且通用的数据交换通用格式。 许多在线服务允许其用户将网站中的表格数据导出到CSV文件中。 CSV文件可在Excel中打开,几乎所有数据库都具有允许从CSV文件导入的工具。 CSV文件行以换行符分割,列用逗号、分号、冒号等分隔。
Programming language | Designed by | Appeared | Extension |
---|---|---|---|
Python | Guido van Rossum | 1991 | .py |
Java | James Gosling | 1995 | .java |
C++ | Bjarne Stroustrup | 1983 | .cpp |
csv中表示此表,如下
Programming language, Designed by, Appeared, Extension
Python, Guido van Rossum, 1991, .py
Java, James Gosling, 1995, .java
C++, Bjarne Stroustrup,1983,.cpp
csv库读取
Python提供了CSV模块来处理CSV文件
- csv.field_size_limit –返回最大字段大小
- csv.get_dialect –获取与名称相关的方言
- csv.list_dialects –显示所有已注册的方言
- csv.reader –从csv文件读取数据
- csv.register_dialect-将方言与名称相关联
- csv.writer –将数据写入csv文件
- csv.unregister_dialect-删除与方言注册表名称关联的方言
- csv.QUOTE_ALL-引用所有内容,无论类型如何。
- csv.QUOTE_MINIMAL-引用带有特殊字符的字段
- csv.QUOTE_NONNUMERIC-引用所有非数字值的字段
- csv.QUOTE_NONE –在输出中不引用任何内容
import csv
with open('csv-demo-in-qq-qun-630011153-144081101.csv',encoding="utf-8-sig") as f:
data = csv.reader(f)
for row in data:
print(row)
有序字典的方式读取
import csv
reader = csv.DictReader(open('csv-demo-in-qq-qun-630011153-144081101.csv',encoding="utf-8-sig"))
for raw in reader:
print(raw)
图片.png
csv库写入
import csv
with open('writeData.csv', mode='w') as file:
writer = csv.writer(file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
#way to write to csv file
writer.writerow(['Programming language', 'Designed by', 'Appeared', 'Extension'])
writer.writerow(['Python', 'Guido van Rossum', '1991', '.py'])
writer.writerow(['Java', 'James Gosling', '1995', '.java'])
writer.writerow(['C++', 'Bjarne Stroustrup', '1985', '.cpp'])
图片.png
使用pandas读取CSV文件
import pandas
result = pandas.read_csv('csv-demo-in-qq-qun-630011153-144081101.csv')
print(result)
用pandas写入CSV文件
from pandas import DataFrame
C = {'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'pandaresult.csv', index = None, header=True) # here you have to write path, where result file will be stored
print (df)
demo.png
小结
现在您知道如何使用方法“ csv”以及如何以CSV格式读取和写入数据。 CSV文件易于读取和管理,并且尺寸较小,因此相对较快地进行处理和传输,因此在软件应用程序中得到了广泛使用。
csv模块提供了各种功能和类,使您可以轻松地进行读写。 您可以查看Python的官方文档,并找到更多有趣的技巧和模块。 CSV是保存,查看和发送数据的最佳方法。 实际上,它并不像开始时那样难学。 但是只要稍作练习,您就可以掌握它。
pandas是读取CSV文件的绝佳选择。
另外,还有其他方法可以使用ANTLR,PLY和PlyPlus之类的库来解析文本文件。 它们都可以处理繁重的解析,如果简单的String操作不起作用,则可以使用正则表达式。
网友评论