python关于csv的查询系统_使用Python对csv文件操作
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格:
就可以存储为csv文件,文件内容是:
No.,Name,Age,Score1,mayi,18,99
2,jack,21,89
3,tom,25,95
4,rain,19,80
假设上述csv文件保存为"test.csv"
1.读文件
如何用Python像操作Excel一样提取其中的一列,即一个字段,利用Python自带的csv模块,有两种方法可以实现:
第一种方法使用reader函数,接收一个可迭代的对象(比如csv文件),能返回一个生成器,就可以从其中解析出csv的内容:比如下面的代码可以读取csv的全部内容,以行为单位:
#!/usr/bin/python3#-*- conding:utf-8 -*-
__author__ = 'mayi'
importcsv#读
with open("test.csv", "r", encoding = "utf-8") as f:
reader=csv.reader(f)
rows= [row for row inreader]print(rows)
得到:
[['No.', 'Name', 'Age', 'Score'],
['1', 'mayi', '18', '99'],
['2', 'jack', '21', '89'],
['3', 'tom', '25', '95'],
['4', 'rain', '19', '80']]
要提取其中某一列,可以用下面的代码:
#!/usr/bin/python3#-*- conding:utf-8 -*-
__author__ = 'mayi'
importcsv#读取第二列的内容
with open("test.csv", "r", encoding = "utf-8") as f:
reader=csv.reader(f)
column= [row[1] for row inreader]print(column)
得到:
['Name', 'mayi', 'jack', 'tom', 'rain']
注意从csv读出的都是str类型。这种方法要事先知道列的序号,比如Name在第2列,而不能根据'Name'这个标题查询。这时可以采用第二种方法:
第二种方法是使用DictReader,和reader函数类似,接收一个可迭代的对象,能返回一个生成器,但是返回的每一个单元格都放在一个字典的值内,而这个字典的键则是这个单元格的标题(即列头)。用下面的代码可以看到DictReader的结构:
#-*- conding:utf-8 -*-
__author__ = 'mayi'
importcsv#读
with open("test.csv", "r", encoding = "utf-8") as f:
reader=csv.DictReader(f)
column= [row for row inreader]print(column)
得到:
[{'No.': '1', 'Age': '18', 'Score': '99', 'Name': 'mayi'},
{'No.': '2', 'Age': '21', 'Score': '89', 'Name': 'jack'},
{'No.': '3', 'Age': '25', 'Score': '95', 'Name': 'tom'},
{'No.': '4', 'Age': '19', 'Score': '80', 'Name': 'rain'}]
如果我们想用DictReader读取csv的某一列,就可以用列的标题查询:
#!/usr/bin/python3#-*- conding:utf-8 -*-
__author__ = 'mayi'
importcsv#读取Name列的内容
with open("test.csv", "r", encoding = "utf-8") as f:
reader=csv.DictReader(f)
column= [row['Name'] for row inreader]print(column)
得到:
['mayi', 'jack', 'tom', 'rain']
2.写文件
读文件时,我们把csv文件读入列表中,写文件时会把列表中的元素写入到csv文件中。
#!/usr/bin/python3#-*- conding:utf-8 -*-
__author__ = 'mayi'
importcsv#写:追加
row = ['5', 'hanmeimei', '23', '81']
out= open("test.csv", "a", newline = "")
csv_writer= csv.writer(out, dialect = "excel")
csv_writer.writerow(row)
得到:
python关于csv的查询系统_使用Python对csv文件操作相关推荐
- python课表查询系统_使用python抓取广西科技大学教务系统课程表
因学校教务系统课程表查询功能累赘,服务器经常挂,同时也不适合手机端查询,所以用python开发爬虫抓取所有课程表,放到我的服务器上面. 本文仅供学习. 特性 中途退出程序再次运行不会抓取到重复课程表 ...
- python开发出来的crm系统_用Python打造一个CRM系统(二)
在上一篇中介绍了CRM和Django,在本篇中将聊聊Django的最佳实践. 总的来说就是遵循Django的设计理念:松耦合.代码精简.快速开发.DRY.明确优于隐式.一致性等.下面从开发环境.项目组 ...
- python html5 便利店收银系统_基于Python的Django框架实现的中式快餐厅管理信息系统网站...
1 初步调研 随着餐饮业的连锁和国外餐饮巨头的进入,餐饮业的竞争将越来越激烈:要想在竞争中处于不败之地,必须在管理.服务等方面提高服务管理意识.面对当前餐饮业普遍的产业化程度低,管理手段.管理技术落后 ...
- python股票查询系统_使用python获取股票的上市日期等基本信息
之前介绍过一个Baostock的python证券数据平台,如今又增加了新的功能,提供了股票上市日期目,上市状态等信息的获取,也可以查询退市股票的信息. 还是按照之前的惯例,上代码: import ba ...
- python地铁查询系统_基于Python的苏州实时公交/地铁接口调用代码实例
1.[代码][Python]代码 #!/usr/bin/python # -*- coding: utf-8 -*- import json, urllib from urllib import ur ...
- python地铁查询系统_地铁python——函数
#作用 #使用步骤 #参数作用 #返回值作用 #说明文档 #函数嵌套 #1.作用:将一段具有独立功能的代码块,整合到一个整体命名,在需要的位置上调用这个名称即完成对应需求 #在开发过程中,可以更高效的 ...
- 用python做一个数据查询软件_使用Python实现NBA球员数据查询小程序功能
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于早起Python ,作者投稿君 一.前言 有时将代码转成带有界面的程序,会极大地方便 ...
- python开发出来的crm系统_用Python打造一个CRM系统(三)
在上一篇中我们基于cookiecutter-django创建了一个one_crm的项目,在本文中将在本地进行初始化,并成功运行起来. 本地初始化之前先确保环境先安装了Python3.8.Postgre ...
- python编程题自动评分系统_用Python为你的「颜值评分」,看看人工智能为你打几分?...
今天我们分享的Python程序,是一款用深度学习来为颜值评分的应用,在科技飞速发展的当今社会,我们可以通过机器学习实现自动驾驶.识别字体等,甚至连谷歌研发的Alphago都可以向人类的围棋事业发出挑战 ...
- python数据存储和查询代码_【Python分享】如何便捷地存储、查询数据
前言在之前的文章(如下)中,分享了爬取天天基金.中债指数的代码.爬取的数据很多,如何方便地存储.查询,也是一个麻烦的问题.本文分享一下我实现的基于 lsm-db 的本地文件数据存储.查询模块. 分享天 ...
最新文章
- testing your idea
- WINVER和_WIN32_IE等宏的含义
- hihocoder1147 时空阵(bfs树+DP)
- 【C语言重点难点精讲】C语言指针
- Redis mysql查询结果_Redis Select 命令
- 利用jQuery如何获取当前被点击的按钮
- verilog 生成块_Verilog数字系统设计教程之学习摘要
- jQuery1.3以上版本@的问题
- iOS-绘制UIView之drawCGRect
- 析构函数定义为虚函数原因
- 5S管理跟精益生产的关系是什么?如何使5S管理有效落地?
- 电脑端微信用户图片DAT格式解码为图片
- 拜耳再投4亿元提升在华处方药产能;阿斯利康进博会公布新冠疫苗最新进展 | 美通企业日报...
- 为人处世之道,与君共勉!
- Java 截取字符串
- C语言多文件编程详解
- android8.1 修改默认时区为中国
- 转移到ios下载安卓_转移到iOS下载-转移到iOS安装器(安卓转移苹果软件)下载v2.10.0 安卓版-当易网...
- 利用python对Excel进行读写操作
- 未来想象计算机图片儿童版,未来世界儿童画画大全绘画作品欣赏
热门文章
- 浮窗 动画特效 android,悬浮窗能实现自定Animation动画效果吗?
- 一些抄来的冷知识...
- onclick获取当前节点
- Web存储(Web Storage)介绍
- Java 集合中的快速失败(fail-fast)和安全失败(fail-safe)机制
- 如何在本地一键安装、重启Linux服务器和远程debug调试代码 idea
- java 多线程和spring之间的坑
- zuul网关,springsecurity认证中心 和 Swagger2 整合遇到的问题
- 垃圾收集器分类与GC性能指标
- SpringMVC整合Quartz实现定时任务和Spring自带Task定时任务