python写入csv文件的几种方法总结,python读csv文件并修改
很多程序在处理数据时会遇到csv格式的文件。下面文章主要介绍python中csv文件的创建、读取和修改的相关信息。通过示例代码非常详细的介绍,有需要的朋友可以参考一下。
1. python中创建新的csv文件
(1). 使用csv.writer()创建:
代码如下:
导入csv
Headers=[学生ID ,姓名,分数]
Rows=[(202001 ,张三, 98 ),
( 202002 ,李四, 95 ),
( 202003 ,王武, 92)]
用open(score.csv , w ,encoding=utf8 ,newline= )作为f :
writer=csv.writer(f)
writer.writerow(标题)
writer.writerows(行)
score.csv文件将在同一路径下生成。
VScode按如下方式打开:
用excel打开它,如下所示:
可以发现逗号,代表csv文件中的空格变化。此外,csv文件中有 \n 用于换行。
(2). 使用csv.Dictwriter()创建:
代码如下:
导入csv
Headers=[学生ID ,姓名,分数]
Rows=[{ 学号 3360 202001 ,姓名 3360 张三,分数 3360 98},
{ 学号 3360 202002 ,姓名 3360 李四,分数 3360 95},
{ 学号 3360 202003 ,姓名 3360 王武,分数 3360 92}]
用open(score.csv , w ,encoding=utf8 ,newline= )作为f :
作家=csv。字典编写器(f,标题)
writer.writeheader()
writer.writerows(行)
你会发现结果和模式1是一样的。
(3). 使用writelines()创建:
导入csv
Headers=[学号,姓名,分数, \n]
Csv=[202001,张三,98 , \n ,
202002,李四,95 , \n ,
202003,王武,92]
用open(score.csv , w ,encoding=utf8 ,newline= )作为f:
f.writelines(headers) # write()参数必须是str,而不是tuple
f .写线(csv)
将会发现,结果与模式1和模式2的结果相同。
综合以上三种方法,csv文件的创建是灵活多样的,主要取决于我们自己创建的原始数据的存储形式,比如方法1和2中的行,方法3中的csv,从而选择合适的函数和方法来创建csv文件。
实际示例(要灵活使用,、\n、append()等):
csv=[]
对于线路:中的线路
分数=结果[line[0]]
对于wav,scores.items():中的分数
# csv.append(第[0]行)
# csv.append
# csv.append(str(i) for i in scores)
# csv.append(\n )
#csv.append(,。join([wav][str(I)for I in scores] \ n ))
csv.append(行[0], wav)
对于分数:中的I
csv.append(, str(i))
csv.append(\n )
用open(task3-result.csv , w )作为f:
f .写线(csv)
2. python中读取csv文件
原始score.csv文件在excel中打开,如下所示:
(1). 使用pandas.read_csv()读取
代码如下:
进口熊猫作为pd
my _ matrix=PD . read _ CSV( score . CSV )#,header=None,index_col=None)
Header : int或int列表,默认为“infer”,指定的行数用作列名,数据起始行数。如果文件中没有列名,则默认为0,
Index _ col: int或sequence或false,默认为none,用作行索引的列号或名称。
打印(我的矩阵)
打印(my_matrix.shape)
此时的输出结果是:
如果代码参数更改为:
my _ matrix=PD . read _ CSV( score . CSV ,header=None,index_col=None)
结果如下:
如果代码参数更改为:
my _ matrix=PD . read _ CSV( score . CSV ,header=0,index_col=0)
结果如下:
为了便于后续分析,可以用下面的代码将数据类型改为np.array类型:
进口熊猫作为pd
将numpy作为np导入
my _ matrix=PD . read _ CSV( score . CSV )#,header=0,index_col=0)
我的矩阵=np.array(我的矩阵)
打印(我的矩阵)
打印(my_matrix.shape)
print(我的矩阵[0][0])
结果如下:
(2). 使用csv.reader()进行读取
代码如下:
导入csv
#读取csv文件
用open(score.csv , r ,encoding=utf8 ,newline= )作为f:
reader=csv.reader(f)
对于reader:中的行
打印(行)
结果如下:
如果你想得到一个列,你可以通过指定的列标签来查询它。代码如下:
对于reader:中的行
打印(第[0]行)
您可以输出具有以下结果的指定列:
(3). 使用csv.DictReader()进行读取
代码如下:
导入csv
#读取csv文件
用open(score.csv , r ,encoding=utf8 ,newline= )作为f:
读者=csv。字典阅读器
对于reader:中的行
打印(行)
结果如下:
如果你想得到一个列,你可以通过指定的标题来查询它。代码如下:
对于reader:中的行
打印(第[学号])
您可以输出具有以下结果的指定列:
总结
这就是这篇关于用python创建、读取和修改csv文件的文章。有关创建、读取和修改pythoncsv文件的更多信息,请搜索流行的IT软件开发工作室以前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。