python中csv模块和join函数的使用
在看项目的时候恰好又碰到了这两个功能,然后稍微记录一下,关于join函数,是一个经常使用的联合函数,作用就是用自己规定的字符去串联字符串和列表之类的,对于字符串来说,join函数针对的是字符串中的每一个字符元素,但是对于列表来说就是针对列表中的每一个元素,不过在字典中join只会直接串联key而不是value,所以如果要value的话要自己指定一下。
#!/usr/bin/env python
# -*- coding:utf-8 -*- 'sep'.join(sep) #第一个sep是自己想要使用的分隔符,第二个是自己想要操作的对象。
>>>str(sep1)
>>>"['%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s']"
>>>sep1.__str__()
>>>"['%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s']"
>>>''.join(sep1)
>>>'%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s'
>>>''.join('%s' * 10)
>>>'%s%s%s%s%s%s%s%s%s%s'
>>>','.join('%s' * 10)
>>>'%,s,%,s,%,s,%,s,%,s,%,s,%,s,%,s,%,s,%,s'
关于csv模块,我用的比较多的是利用csv将本地文件导入到数据库当中,所以基本上都是读文件:第一种是使用reader,第二种是使用DictReader
data = csv.reader(open(r'C:\Users\欧阳\Desktop\csv专用\test.csv', encoding='utf-8'))
rows = [row for row in data]
rows
[['\ufeff179', '阿尔布开克', 'city0000179', '', '', '', '', '', ''], ['', '安克雷奇', 'city0000180', '', '', '', '', '', ''], ['', '亚特兰大', 'city0000181', '', '', '', '', '', ''], ['', '比林斯', 'city0000182', '', '', '', '', '', ''], ['', '波士顿南', 'city0000183', '', '', '', '', '', ''], ['', '波士顿-北', 'city0000184', '', '', '', '', '', ''], ['', '芝加哥', 'city0000185', '', '', '', '', '', ''], ['', '丹佛', 'city0000186', '', '', '', '', '', ''], ['', '西雅图', 'city0000187', '', '', '', '', '', ''], ['', '莱克海瓦萨', 'city0000188', '', '', '', '', '', ''], ['', '迈阿密', 'city0000189', '', '', '', '', '', ''], ['', '休斯顿', 'city0000190', '', '', '', '', '', ''], ['', '马纳萨斯', 'city0000191', '', '', '', '', '', ''], ['', '拉斯维加斯', 'city0000192', '', '', '', '', '', ''], ['', '洛杉矶', 'city0000193', '', '', '', '', '', ''], ['', '迈阿密南部', 'city0000194', '', '', '', '', '', ''], ['', '明尼阿波利斯', 'city0000195', '', '', '', '', '', ''], ['', '纽约', 'city0000196', '', '', '', '', '', ''], ['', '奥兰多', 'city0000197', '', '', '', '', '', ''], ['', '费城', 'city0000198', '', '', '', '', '', ''], ['', '凤凰城', 'city0000199', '', '', '', '', '', ''], ['', '波特兰', 'city0000200', '', '', '', '', '', ''], ['', '盐湖城', 'city0000201', '', '', '', '', '', ''], ['', '旧金山', 'city0000202', '', '', '', '', '', ''], ['', '圣地亚哥', 'city0000203', '', '', '', '', '', ''], ['', '坦帕', 'city0000204', '', '', '', '', '', ''], ['', '卡尔加里', 'city0000205', '', '', '', '', '', ''], ['', '哈利法克斯', 'city0000206', '', '', '', '', '', ''], ['', '蒙特利尔', 'city0000207', '', '', '', '', '', ''], ['', '多伦多', 'city0000208', '', '', '', '', '', ''], ['', '温哥华', 'city0000209', '', '', '', '', '', ''], ['', '达拉斯', 'city0000210', '', '', '', '', '', ''], ['', '贝灵汉', 'city0000211', '', '', '', '', '', '']]
reader = csv.DictReader(open(r'C:\Users\欧阳\Desktop\csv专用\test.csv', encoding='utf-8'))
column = [row for row in reader]
column
[OrderedDict([('\ufeff179', ''), ('阿尔布开克', '安克雷奇'), ('city0000179', 'city0000180'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '亚特兰大'), ('city0000179', 'city0000181'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '比林斯'), ('city0000179', 'city0000182'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '波士顿南'), ('city0000179', 'city0000183'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '波士顿-北'), ('city0000179', 'city0000184'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '芝加哥'), ('city0000179', 'city0000185'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '丹佛'), ('city0000179', 'city0000186'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '西雅图'), ('city0000179', 'city0000187'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '莱克海瓦萨'), ('city0000179', 'city0000188'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '迈阿密'), ('city0000179', 'city0000189'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '休斯顿'), ('city0000179', 'city0000190'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '马纳萨斯'), ('city0000179', 'city0000191'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '拉斯维加斯'), ('city0000179', 'city0000192'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '洛杉矶'), ('city0000179', 'city0000193'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '迈阿密南部'), ('city0000179', 'city0000194'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '明尼阿波利斯'), ('city0000179', 'city0000195'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '纽约'), ('city0000179', 'city0000196'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '奥兰多'), ('city0000179', 'city0000197'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '费城'), ('city0000179', 'city0000198'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '凤凰城'), ('city0000179', 'city0000199'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '波特兰'), ('city0000179', 'city0000200'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '盐湖城'), ('city0000179', 'city0000201'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '旧金山'), ('city0000179', 'city0000202'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '圣地亚哥'), ('city0000179', 'city0000203'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '坦帕'), ('city0000179', 'city0000204'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '卡尔加里'), ('city0000179', 'city0000205'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '哈利法克斯'), ('city0000179', 'city0000206'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '蒙特利尔'), ('city0000179', 'city0000207'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '多伦多'), ('city0000179', 'city0000208'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '温哥华'), ('city0000179', 'city0000209'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '达拉斯'), ('city0000179', 'city0000210'), ('', ''), ('', ''), ('', '')]), OrderedDict([('\ufeff179', ''), ('阿尔布开克', '贝灵汉'), ('city0000179', 'city0000211'), ('', ''), ('', ''), ('', '')])]
写和读也差不多,三个步骤,显示打开文件,然后调用csv的writer方法,然后把数据写进去就可以了。
datas = [['name', 'age'], ['Bob', 14], ['Tom', 23], ['Jerry', '']]
with open('test.csv', 'w', newline='') as f:
writer = csv.writer(f)
for row in datas:
writer.writerow(row)
#还可使用writerrows写入多行
python中csv模块和join函数的使用的更多相关文章
- Python中threading模块的join函数
Join的作用是阻塞进程直到线程执行完毕.通用的做法是我们启动一批线程,最后join这些线程结束,例如: for i in range(10): t = ThreadTest(i) thread_ar ...
- 第11.24节 Python 中re模块的其他函数
一. re.compile函数 正则表达式编译函数,在后面章节专门介绍. 二. re.escape(pattern) re.escape是一个工具函数,用于对字符串pattern中所有可能被视为正则表 ...
- Python中csv模块解析
导入模块 import csv 2.读取csv文件 file1 = open('test1.csv', 'rb') reader = csv.reader(file1) rows = [row for ...
- Python中random模块在主函数中设置随机种子是否对于调用的函数中的随机值产生影响?
一个问题,加入我有一个工程文件,在main函数里面调用random模块,设置随机种子,主函数中的随机种子的设置是否会影响主函数所调用的函数中的随机值? 实际上这个问题非常重要,比如你在跑网络的时候,初 ...
- python中os模块的walk函数
Python的文档中对walk的介绍: walk(top, topdown=True, onerror=None, followlinks=False) 树状目录的生成器. 对于以top参数为根的目录 ...
- python 中 logging 模块的 log 函数以及坑
记录下吧,一个日志的函数,但有个坑是在调用函数时需要先将函数实例化为一个变量,否则进入某个循环时会多次刷新日志: """ 日志模块 """ ...
- python中string模块各属性以及函数的用法
任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串 ...
- python 历险记(五)— python 中的模块
目录 前言 基础 模块化程序设计 模块化有哪些好处? 什么是 python 中的模块? 引入模块有几种方式? 模块的查找顺序 模块中包含执行语句的情况 用 dir() 函数来窥探模块 python 的 ...
- python中os模块中文帮助
python中os模块中文帮助 python中os模块中文帮助文档文章分类:Python编程 python中os模块中文帮助文档 翻译者:butalnd 翻译于2010.1.7——2010.1.8 ...
随机推荐
- openresty开发系列32--openresty执行流程之1初始化阶段
openresty开发系列32--openresty执行流程之初始化阶段 一)初始化阶段 1)init_by_lua init_by_lua_block init_by_lua_file语 ...
- PID:我应该何时计算积分项?
最近看到了Brett Beauregard发表的有关PID的系列文章,感觉对于理解PID算法很有帮助,于是将系列文章翻译过来!在自我提高的过程中,也希望对同道中人有所帮助.作者Brett Beaure ...
- TortoiseGit 查看单个文件日志显示全部提交记录了 解决办法
右击文件,Show log.后来在界面上发现,“显示整个工程”的选项.才发现不能勾这个. 去掉勾选,就可以看到单个文件日志了,如果勾选"All Branches"就可以看到该文件在 ...
- MongoDB的局域网连接问题
问题前两天在本机连接虚拟机的MongoDB,总是连接拒绝 上网百度了一堆,找到一些看似解释,实则不一定管用的玩意. 自己找到一个解法是改etc/mongodb.conf文件,把bindIp的127.0 ...
- LeetCode:缺失的第一个正数【41】
LeetCode:缺失的第一个正数[41] 题目描述 给定一个未排序的整数数组,找出其中没有出现的最小的正整数. 示例 1: 输入: [1,2,0] 输出: 3示例 2: 输入: [3,4,-1,1] ...
- java的单进程多线程模式
java是单进程多线程模型,多线程依然可以充分利用多核(core)/多处理器(cpu) 单个cpu线程在同一时刻只能执行单一指令,也就是一个线程 单个线程同时只能在单个cpu线程中执行 Java中的所 ...
- docker tag根据镜像id做标签,用于应用的回滚
示例 通过ID tag镜像 下面是tag一个id为0e5574283393的本地镜像到“fedora”存储库,tag名称version1.0: docker tag 0e5574283393 fedo ...
- Graphviz(02) 汉字subgraph不显示汉字的处理
1.按照官方教程设置 2.如果还不显示,在不显示的汉字前面加上一个“空格”,汉字就会正常显示. digraph idp_modules{ rankdir = TB; fontname = " ...
- 【OpenCV开发】OpenCV3后IPLimage转换成MAT的问题
IplImage* img1 = cvCreateImage(cvGetSize(resizeRes), IPL_DEPTH_8U, 1);//创建目标图像 Mat test = img1; 报错 ...
- WCF之Windows宿主
WCF之Windows宿主(可安装成服务自动并启动) WCF之Windows宿主(可安装成服务自动并启动) 创建解决方案WCFServiceDemo 创建WCF服务库(类库或WCF服务库)WCFSer ...