python中csv文件把成绩加入_【学习笔记】python3中csv文件使用

1. reader=csv.reader(f, delimiter=','):按行读取数据,reader为生成器,读取的每行数据为列表格式,可以通过delimiter参数指定分隔符。

import csv

with open('data.csv', encoding='utf-8') as f:

reader = csv.reader(f)

header = next(reader) #当文件中有标题行时,可使用header=next(reader)先获取到第一行的数据,再进行遍历剩余所有的数据行

print(header)

for row in reader:

print(row)

所有的数据都以字符串输出(包括数字),如果要使用数字格式,要使用int()/float()做相应转换

2. writer=csv.writer(f):按行写入数据,,writer支持writerow(列表)单行写入,和writerows(嵌套列表)写入多行数据

import csv

header = ['name', 'age', 'sex(gentle/male)']

data = [

['张三', '18', 'gentle'],

['李四', '19', 'male'],

['王五', '20', 'gentle']

]

with open('data.csv', 'w', encoding='utf-8', newline='') as f: #指定格式为w 文本写入,不支持wb二进制写入;指定不自动添加新行newline='',否则每写入一行就或多一个空行

writer = csv.writer(f) #如果想写入的文件用Excel打开没有乱码,utf-8可以改为utf-8-sig。

writer.writerow(header) #单行写入标题行

writer.writerows(data) #多行写入数据行

3.reader=csv.DictReader(f):将标题和每一列数据组装成有序字典(OrderedDict)格式,无须再单独读取标题行。

import csv

with open('data.csv', encoding='utf-8') as f:

reader = csv.DictReader(f)

for row in reader:

print(row['name'], row['age'], row['sex(gentle/male)'])

4.writer=csv.DictWriter(f, 标题行列表):写入可以先用writer.writeheader()写入标题,然后再用writer.writerow(字典格式数据行)或write.writerows(多行数据)。

import csv

header = ['name', 'age', 'sex(gentle/male)']

data = [

['张三', '18', 'gentle'],

['李四', '19', 'male'],

['王五', '20', 'gentle']

]

with open('data.csv', 'w', encoding='utf-8', newline='') as f:

writer = csv.DictWriter(f, header)

writer.writeheader()

writer.writerows(data)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/305073.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

生存是一种毅力

三月初回到成都,出站时还是凌晨5点多,第一次这么早站在成都的火车站,拥挤的人群和车辆,我的神志却异常的清醒,坚持不要母亲来接我. 到家洗漱后到头就睡,一觉醒来10点多,中午的成都虽不像北京那么阳光普照但也感觉暖暖的.想起在北京训练营的日子,"枯藤老树昏鸦"每天伴…

linux truncate文件,linux系统编程:用truncate调整文件大小

truncate的使用非常简单:int truncate(const char *path, off_t length);参数1:文件名参数2: 文件需要被调整的大小length 大于 文件大小, 文件后面会填充空白字节或者空洞length 小于 文件大小, 文件多出的部分,会被…

python数据分析与展示 pdf课件_python数据分析与展示 课件 相关实例(示例源码)下载 - 好例子网...

开发语言:Python | 大小:9.84KB | 发布时间:2020-05-13 | 立即下载 开发语言:Python | 大小:0.24M | 发布时间:2019-09-09 | 立即下载 开发语言:Python | 大小:0.15M | 发布时间&…

如何在 ASP.Net Core 中使用 SignalR

SignalR for ASP.Net Core 是 SignalR 的浴火重生版,允许你在 ASP.Net Core 中实现实时通讯,这里的 实时 意味着双方都能快速的感知对方发来的消息,比如:一旦 server 端有需要推送的内容将会直接 push 到 client,这和原…

搞笑动图:这些痛,只有程序员懂…

“代码上线后又追加了新特性” “在生产环境做 hotfix” “刚调稳定的系统,公司叕空降了一位架构师,叕要重构现有系统…… ” “当程序员听客户说还在用 IE 时” “当黑客拿到 root 权限之后” “代码进入循环分支后” “项目交接,客户要求开…

python中闭包不是立刻执行_一道神奇的Python面试题,你会吗?

无意间,看到这么一道Python面试题:以下代码将输出什么?def testFun():temp [lambda x : i*x for i in range(4)]return tempfor everyLambda in testFun():print (everyLambda(2))脑中默默一想,这还用说么,肯定是&…

.net 中通用的formatstring格式符整理

格式化日期和数字的字符串经常要用到这个, 就把帮助里面的东西大概整理了一些列在这里了. 下表描述了用来格式化 DateTime 对象的标准格式说明符。 格式说明符名称说明d短日期模式显示由与当前线程关联的 DateTimeFormatInfo.ShortDatePattern 属性定义的模式或者由指定格式提供…

linux内核分为子系统,Linux内核内存管理子系统分析【转】

还是那张熟悉的老图:Linux内核子系统简介(由七个部分组成)Linux内存管理模型:1. 内存管子系统职能:1> 管理虚拟地址与物理地址的映射2> 管理物理内存的分配2. 地址映射管理1> 虚拟地址空间分布:linux采用的是一种虚拟地…

python打包成安装包_把 python 程序打包成 egg 或者 whl 安装包

1.1 安装setuptools 首先要安装setuptools工具。Debian/Ubuntu下可以直接使用apt安装: $ sudo apt-get install python-setuptools 或者通过pip安装: $ pip install setuptools 更新setuptools: $ pip install --upgrade setuptools 或者下载…

关于C#事件处理函数中的参数(object sender, EventArgs e)

1、是事件源,表示触发事件的那个组件 如(button/label/listview...),比如说你单击button,那么sender就是button2、EventArgs是事件参数,它用来辅助你处理事件比如说你用鼠标点击窗体,那么EventArgs是会包含点击的位置…

spss22.0统计分析从入门到精通_数据分析最全资料:SPSS/MATLAB/SQL/SAS/EXCEL经典教材+视频教程,快速入门!...

可以说当今社会数据就是力量。数据分析能力已经成为各个行业必备的技能,如果能熟练掌握数据分析技能,不管是留学申请还是以后的就业,都会是一个很大的加分项。但是目前国内很少有高校专门开设数据分析课程,想要掌握技能大部分要靠…

可反复擦写5万次的手写板,竟然还能用橡皮擦能清除屏幕!

作为一名文艺青年,平时写字画画是我的一大爱好。 心情不错,来个创作! 还记得我们之前介绍过的Boogie Board电子手写板吗? 小木用的就是它。 虽然好用,只不过有时候不小心画错了,只能重新来。 伤心啊…… 不…

普通用户杜绝不请自来的邮件对策

1、给自己的信箱起个“复杂用户名”:许多人习惯用自己姓名的拼音作为用户名,但一般过于简单,这样被垃圾邮件制造者捕捉到的机率很高。因此在申请邮箱时,不妨起个保护性强一点的用户名,比如英文和数字的组合,尽量长一点…

[Abp 源码分析]权限验证

点击上方蓝字关注我们0.简介Abp 本身集成了一套权限验证体系,通过 ASP.NET Core 的过滤器与 Castle 的拦截器进行拦截请求,并进行权限验证。在 Abp 框架内部,权限分为两块,一个是功能(Feature),一个是权限项(Permissio…

cocoscreator editbox 只允许数字_《Cocos Creator游戏实战》做一个数字调节框

当玩家购买道具的时候,一个个买可能会比较麻烦,用数字调节框的话玩家一次性就可以买好几十个了(钱够的话)。运行效果如下:Cocos Creator版本:2.2.0公号"All Codes"后台回复"数字调节框",获取该项目…

linux自动应答,08. 创建 ks.cfg自动应答文件

Kiskstart 安装步骤比较 Cobbler 自动化部署复杂些,众所周知,随着时间推移,行业会逐步的降低软件操作难度以作为软件提升的标志,于是 Cobbler 产生掩盖或者帮操作者完成了许多工作,于是使用就更简单。但是使用 Kisksta…

python类变量共享吗_第7.12节 可共享的Python类变量

第7.12节 可共享的Python类变量一、 引言在上节已经引入介绍了类变量和实例变量,类体中定义的变量为类变量,默认属于类本身,实例变量是实例方法中定义的self对象的变量,对于每个实例都是独有数据,而类变量是该类所有…

为什么一流成功人士的闹钟都定在早晨5:57?

对很多人来说,早晨时分是一天中最匆忙的时段。近年来,我在研究人们如何利用时间的过程中发现,市场上铺天盖地的媒体教你如何利用早晨的时间。 美国国家睡眠基金会发布的一项睡眠调查结果显示,在工作日的早晨,30-50岁的…

命令行小技巧

我们平时使用Linux的时候经常遇到这样一个问题,举例有这样一种情况:执行命令 $ cp /etc/apt/sources.list /etc/apt/sources.list.bak 这里面有个问题,明明 /etc/apt/sources 这几个字都是一样的,为什么要打两遍?这样的…

统计学习导论_统计机器学习之扫盲导论篇

机器学习之扫盲导论篇来都来了,不关注一下吗??人工智能是当下最火的词,而机器学习就是它的灵魂。现在超级多搞金融的人已经用到很深的机器学习模型了,更别提互联网企业的大佬们了,比如:(这是一篇…