Python3 From Zero——{最初的意识:006~数据编码与处理}
一、读写CSV数据:
#!/usr/bin/env python3
#-*- coding=utf8 -*-
import csv
with open('kxtx.csv', 'rt') as f:
f_csv = csv.DictReader(f)
for x in f_csv:
print(x)
if x['货物名称'] == '电机':
break
f@z ~/py_script $ python3 csv_test.py
{'开单网点组织编号': 'C050220002', '运单号': 'yt050806', '公司类型': '项目客户', '首家承接网点': '厚德天津站点', '所属枢纽': '天津卡行天下供应链管理有限公司', '货物名称': 'xm食品', '开单公司': 'XM天津茂绎运通物流有限公司', '件数': '500', '首家承接公司类型': '线路公司', '开单网点': 'XM天津茂绎运通物流有限公司', '首家承接公司': '滨江厚德物流(天津)有限公司', '客户编号': 'k020220197', '托运日期': '2016-05-08', '外包合计(元)': '9189.18', '开单日期': '2016-05-08', '体积(m3)': '102', '重量(KG)': '3562', '交易类型': '自主交易', '运费合计(元)': '9189.18', '当前状态': '客户已签收'}
{'开单网点组织编号': 'C050100014', '运单号': 'C0501000140000615', '公司类型': '项目客户', '首家承接网点': '北京大陆桥精准北京站点', '所属枢纽': '北京卡行天下有限公司', '货物名称': '电机', '开单公司': '北京和顺通达物流有限公司', '件数': '43', '首家承接公司类型': '线路公司', '开单网点': '北京和顺通达物流有限公司', '首家承接公司': '北京大陆桥物流有限公司(精准)', '客户编号': 'K020100048', '托运日期': '2016-05-10', '外包合计(元)': '1173.6', '开单日期': '2016-05-10', '体积(m3)': '4.51', '重量(KG)': '1956', '交易类型': '自主交易', '运费合计(元)': '1173.6', '当前状态': '客户已签收'}
#!/usr/bin/env python3
#-*- coding=utf8 -*-
import csv
headers = ['姓名', '年龄', '性别']
rows = [('张三', 27, '男'), ('李四', 24, '女')]
with open('testfile.csv', 'wt') as f:
f_csv = csv.writer(f)
f_csv.writerow(headers)
f_csv.writerows(rows)
f@z ~/py_script $ cat testfile.csv
姓名,年龄,性别
张三,27,男
李四,24,女
二、数据汇总和统计:pandas(大型数据集分析、数据归组、统计分析等)
>>> import pandas
>>> test = pandas.read_csv('kxtx.csv')
>>> test
所属枢纽 开单日期 托运日期 开单公司 \
0 天津卡行天下供应链管理有限公司 2016-05-08 2016-05-08 XM天津茂绎运通物流有限公司
1 北京卡行天下有限公司 2016-05-10 2016-05-10 北京和顺通达物流有限公司
2 天津卡行天下供应链管理有限公司 2016-05-07 2016-05-07 XM天津茂绎运通物流有限公司
3 石家庄卡行供应链管理有限公司 2016-05-07 2016-05-07 xm河北安跃商贸有限公司
>>> type(test)
<class 'pandas.core.frame.DataFrame'>
Python3 From Zero——{最初的意识:006~数据编码与处理}的更多相关文章
- Python3 From Zero——{最初的意识:008~初级实例演练}
一.构显国际橡棋8x8棋盘 #!/usr/bin/env python3 #-*- coding:utf-8 -*- color_0="\033[41m \033[00m" col ...
- Python3 From Zero——{最初的意识:002~字符串和文本}
一.使用多个界定符分割字符串 字符串.split(',')形式只适用于单一分割符的情况:多分割符同时应用的时候,可使用re.split() >>> line = 'asdf fjdk ...
- Python3 From Zero——{最初的意识:000~Initial consciousness}
http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 a.编码 默认情况下,Python ...
- Python3 From Zero——{最初的意识:007~函数}
一.编写可接受任意数量参数的函数:*.** >>> def test(x, *args, y, **kwargs): ... pass ... >>> test(1 ...
- Python3 From Zero——{最初的意识:005~文件和I/O}
一.输出重定向到文件 >>> with open('/home/f/py_script/passwd', 'rt+') as f1: ... print('Hello Dog!', ...
- Python3 From Zero——{最初的意识:004~迭代器和生成器}
一.反向迭代:reversed() >>> a [1, 2, 3, 4] >>> for x in reversed(a): ... print(x, end=' ...
- Python3 From Zero——{最初的意识:003~数字、日期、时间}
一.对数值进行取整:round(value,ndigits) >>> round(15.5,-1) #可以取负数 20.0 >>> round(15.5,0) #当 ...
- Python3 From Zero——{最初的意识:001~数据结构和算法}
一.从队列两端高效插入.删除元素,及保留固定数量的数据条目: collections.deque([iterable[,maxlen=N]]) a = collections.deque([1, 2] ...
- python2.x和3.x的区别(不定时更新)
python2.x和3.x的区别 文:铁乐与猫 2018.3.16新增博文,为方便以后总结Python2.x与3.x的不同版本之间的区别,随时更新. python原本的宗旨是崇尚优美.清晰.简单.但p ...
随机推荐
- Mysql数据库命令行输入错误怎么办
Mysql数据库命令行输入错误 缺少另一半 错误输入 ' 或 " 时,必须键入另一半才能退出命令. 缺少分号 写入语句缺少分号需要补全. 输入quit或者exit退出 ctrl+c,完全退出 ...
- 用 Flask 来写个轻博客 (1) — 创建项目
目录 目录 前言 扩展阅读 部署开发环境 创建 Github 项目 前言 一步一步的实现一个 Flask 轻博客项目启动,最新的代码会上传到 Github. 扩展阅读 欢迎使用 Flask - vir ...
- vim与ctags/cscope的完美结合
1. 安装vim/ctags/cscope ctag 2. 在源码根目录下执行 sudo ctags -R . 会生成tags文件,里面包含着整个源码目录下的符号信息. 3. 直接到达某个符号(比 ...
- Invalidate() InvalidateRect() 与 UpdateWindow()
按引:Invalidate在消息队列中加入一条WM_PAINT消息,其无效区为整个客户区.而UpdateWindow直接发送一个WM_PAINT消息,其无效区范围就是消息队列中WM_PAINT消息(最 ...
- jQuery中html()再探究(转载)
我们先来看段代码,很简单,如下: /*html部分*/ <div id="div1"> <span>111</span> <span> ...
- java读取pdf文本转换html
补充:一下代码基于maven,现将依赖的jar包单独导出 地址:pdf jar 完整代码地址 也就两个文件 java读取pdf中的纯文字,这里使用的是pdfbox工具包 maven引入如下配置 < ...
- sed命令详解 (转载)
sed是stream editor的简称,也就是流编辑器.它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内 ...
- C# WinfForm 控件之dev电子表格 SpreadSheet
网上找了一些资料可是不得入门 只能再回过头来看demos 看了一点 例子大多继承自SpreadsheetRibbonTutorialControlBase 这个类,它又继承自SpreadSheetTu ...
- js图片放大境效果
放大境效果如下图所示,当鼠标放到小图时,就会出现浅黄色的小块,而右边方框也出现了,并且右边方框的内容时根据浅黄色小块的内容变换而变换: 原理: 1,准备2张图,一大一小,如上图所示,小图的盒子div1 ...
- 55-Ubuntu-软件安装
1.通过apt安装/卸载软件 apt是advanced packaging tool, 是Linux下的一款安装包管理工具. 可以在终端中方便的安装/卸载/更新软件包. (1)安装软件 sudo ap ...