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‘, ‘103‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘180‘, ‘安克雷奇‘, ‘city0000180‘, ‘105‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘181‘, ‘亚特兰大‘, ‘city0000181‘, ‘145‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘182‘, ‘比林斯‘, ‘city0000182‘, ‘127‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘183‘, ‘波士顿南‘, ‘city0000183‘, ‘102‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘184‘, ‘波士顿-北‘, ‘city0000184‘, ‘102‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘185‘, ‘芝加哥‘, ‘city0000185‘, ‘111‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘186‘, ‘丹佛‘, ‘city0000186‘, ‘125‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘187‘, ‘西雅图‘, ‘city0000187‘, ‘134‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘188‘, ‘莱克海瓦萨‘, ‘city0000188‘, ‘147‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘189‘, ‘迈阿密‘, ‘city0000189‘, ‘140‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘190‘, ‘休斯顿‘, ‘city0000190‘, ‘114‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘191‘, ‘马纳萨斯‘, ‘city0000191‘, ‘129‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘192‘, ‘拉斯维加斯‘, ‘city0000192‘, ‘129‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘193‘, ‘洛杉矶‘, ‘city0000193‘, ‘120‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘194‘, ‘迈阿密南部‘, ‘city0000194‘, ‘140‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘195‘, ‘明尼阿波利斯‘, ‘city0000195‘, ‘112‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘196‘, ‘纽约‘, ‘city0000196‘, ‘108‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘197‘, ‘奥兰多‘, ‘city0000197‘, ‘140‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘198‘, ‘费城‘, ‘city0000198‘, ‘138‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘199‘, ‘凤凰城‘, ‘city0000199‘, ‘110‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘200‘, ‘波特兰‘, ‘city0000200‘, ‘133‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘201‘, ‘盐湖城‘, ‘city0000201‘, ‘119‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘202‘, ‘旧金山‘, ‘city0000202‘, ‘120‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘203‘, ‘圣地亚哥‘, ‘city0000203‘, ‘120‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘204‘, ‘坦帕‘, ‘city0000204‘, ‘140‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘205‘, ‘卡尔加里‘, ‘city0000205‘, ‘150‘, ‘4‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘206‘, ‘哈利法克斯‘, ‘city0000206‘, ‘151‘, ‘4‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘207‘, ‘蒙特利尔‘, ‘city0000207‘, ‘152‘, ‘4‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘208‘, ‘多伦多‘, ‘city0000208‘, ‘153‘, ‘4‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘209‘, ‘温哥华‘, ‘city0000209‘, ‘154‘, ‘4‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘210‘, ‘达拉斯‘, ‘city0000210‘, ‘114‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘], [‘211‘, ‘贝灵汉‘, ‘city0000211‘, ‘134‘, ‘2‘, ‘‘, ‘‘, ‘‘, ‘‘]]
reader = csv.DictReader(open(r‘C:\Users\欧阳\Desktop\csv专用\test.csv‘, encoding=‘utf-8‘))
column = [row for row in reader]
column
[OrderedDict([(‘\ufeff179‘, ‘180‘), (‘阿尔布开克‘, ‘安克雷奇‘), (‘city0000179‘, ‘city0000180‘), (‘103‘, ‘105‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘181‘), (‘阿尔布开克‘, ‘亚特兰大‘), (‘city0000179‘, ‘city0000181‘), (‘103‘, ‘145‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘182‘), (‘阿尔布开克‘, ‘比林斯‘), (‘city0000179‘, ‘city0000182‘), (‘103‘, ‘127‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘183‘), (‘阿尔布开克‘, ‘波士顿南‘), (‘city0000179‘, ‘city0000183‘), (‘103‘, ‘102‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘184‘), (‘阿尔布开克‘, ‘波士顿-北‘), (‘city0000179‘, ‘city0000184‘), (‘103‘, ‘102‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘185‘), (‘阿尔布开克‘, ‘芝加哥‘), (‘city0000179‘, ‘city0000185‘), (‘103‘, ‘111‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘186‘), (‘阿尔布开克‘, ‘丹佛‘), (‘city0000179‘, ‘city0000186‘), (‘103‘, ‘125‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘187‘), (‘阿尔布开克‘, ‘西雅图‘), (‘city0000179‘, ‘city0000187‘), (‘103‘, ‘134‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘188‘), (‘阿尔布开克‘, ‘莱克海瓦萨‘), (‘city0000179‘, ‘city0000188‘), (‘103‘, ‘147‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘189‘), (‘阿尔布开克‘, ‘迈阿密‘), (‘city0000179‘, ‘city0000189‘), (‘103‘, ‘140‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘190‘), (‘阿尔布开克‘, ‘休斯顿‘), (‘city0000179‘, ‘city0000190‘), (‘103‘, ‘114‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘191‘), (‘阿尔布开克‘, ‘马纳萨斯‘), (‘city0000179‘, ‘city0000191‘), (‘103‘, ‘129‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘192‘), (‘阿尔布开克‘, ‘拉斯维加斯‘), (‘city0000179‘, ‘city0000192‘), (‘103‘, ‘129‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘193‘), (‘阿尔布开克‘, ‘洛杉矶‘), (‘city0000179‘, ‘city0000193‘), (‘103‘, ‘120‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘194‘), (‘阿尔布开克‘, ‘迈阿密南部‘), (‘city0000179‘, ‘city0000194‘), (‘103‘, ‘140‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘195‘), (‘阿尔布开克‘, ‘明尼阿波利斯‘), (‘city0000179‘, ‘city0000195‘), (‘103‘, ‘112‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘196‘), (‘阿尔布开克‘, ‘纽约‘), (‘city0000179‘, ‘city0000196‘), (‘103‘, ‘108‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘197‘), (‘阿尔布开克‘, ‘奥兰多‘), (‘city0000179‘, ‘city0000197‘), (‘103‘, ‘140‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘198‘), (‘阿尔布开克‘, ‘费城‘), (‘city0000179‘, ‘city0000198‘), (‘103‘, ‘138‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘199‘), (‘阿尔布开克‘, ‘凤凰城‘), (‘city0000179‘, ‘city0000199‘), (‘103‘, ‘110‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘200‘), (‘阿尔布开克‘, ‘波特兰‘), (‘city0000179‘, ‘city0000200‘), (‘103‘, ‘133‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘201‘), (‘阿尔布开克‘, ‘盐湖城‘), (‘city0000179‘, ‘city0000201‘), (‘103‘, ‘119‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘202‘), (‘阿尔布开克‘, ‘旧金山‘), (‘city0000179‘, ‘city0000202‘), (‘103‘, ‘120‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘203‘), (‘阿尔布开克‘, ‘圣地亚哥‘), (‘city0000179‘, ‘city0000203‘), (‘103‘, ‘120‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘204‘), (‘阿尔布开克‘, ‘坦帕‘), (‘city0000179‘, ‘city0000204‘), (‘103‘, ‘140‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘205‘), (‘阿尔布开克‘, ‘卡尔加里‘), (‘city0000179‘, ‘city0000205‘), (‘103‘, ‘150‘), (‘2‘, ‘4‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘206‘), (‘阿尔布开克‘, ‘哈利法克斯‘), (‘city0000179‘, ‘city0000206‘), (‘103‘, ‘151‘), (‘2‘, ‘4‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘207‘), (‘阿尔布开克‘, ‘蒙特利尔‘), (‘city0000179‘, ‘city0000207‘), (‘103‘, ‘152‘), (‘2‘, ‘4‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘208‘), (‘阿尔布开克‘, ‘多伦多‘), (‘city0000179‘, ‘city0000208‘), (‘103‘, ‘153‘), (‘2‘, ‘4‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘209‘), (‘阿尔布开克‘, ‘温哥华‘), (‘city0000179‘, ‘city0000209‘), (‘103‘, ‘154‘), (‘2‘, ‘4‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘210‘), (‘阿尔布开克‘, ‘达拉斯‘), (‘city0000179‘, ‘city0000210‘), (‘103‘, ‘114‘), (‘2‘, ‘2‘), (‘‘, ‘‘)]), OrderedDict([(‘\ufeff179‘, ‘211‘), (‘阿尔布开克‘, ‘贝灵汉‘), (‘city0000179‘, ‘city0000211‘), (‘103‘, ‘134‘), (‘2‘, ‘2‘), (‘‘, ‘‘)])]

写和读也差不多,三个步骤,显示打开文件,然后调用csv的writer方法,然后把数据写进去就可以了。

datas = [[‘name‘, ‘age‘], [‘Bob‘, 14], [‘Tom‘, 23], [‘Jerry‘, ‘18‘]]
with open(‘test.csv‘, ‘w‘, newline=‘‘) as f:
    writer = csv.writer(f)
    for row in datas:
        writer.writerow(row)
        #还可使用writerrows写入多行
        

原文地址:https://www.cnblogs.com/zzy0306/p/8444403.html

时间: 2024-08-09 16:16:35

python中csv模块和join函数的使用的相关文章

Python中threading模块的join函数

Join的作用是众所周知的,阻塞进程直到线程执行完毕.通用的做法是我们启动一批线程,最后join这些线程结束,例如: 1 for i in range(10): 2 3 t = ThreadTest(i) 4 5 thread_arr.append(t) 6 7 for i in range(10): 8 9 thread_arr[i].start() 10 11 for i in range(10): 12 13 thread_arr[i].join() 此处join的原理就是依次检验线程池中

Python中CSV模块

CSV csv文件格式是一种通用的电子表格和数据库导入导出格式.最近我调用RPC处理服务器数据时,经常需要将数据做个存档便使用了这一方便的格式. 简介 Python csv模块封装了常用的功能,使用的简单例子如下: # 读取csv文件 import csv with open('some.csv', 'rb') as f: # 采用b的方式处理可以省去很多问题 reader = csv.reader(f) for row in reader: # do something with row, s

python中string模块各属性以及函数的用法

任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: python的字符串属性函数 python的string模块 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 字符串属性函数 系统版本:CentOS release 6.2 (Final)2.6.32

Python中datetime模块中strftime/strptime函数

python中datetime模块非常好用,提供了日期格式和字符串格式相互转化的函数strftime/strptime 1.由日期格式转化为字符串格式的函数为: datetime.datetime.strftime() 2.由字符串格式转化为日期格式的函数为: datetime.datetime.strptime() 3.两个函数都涉及日期时间的格式化字符串,列举如下: %a 星期几的简写;如 星期三为Web %A 星期几的全称;如 星期三为Wednesday %b 月份的简写; 如4月份为Ap

python中os模块中文帮助

python中os模块中文帮助 python中os模块中文帮助文档文章分类:Python编程 python中os模块中文帮助文档 翻译者:butalnd 翻译于2010.1.7——2010.1.8,个人博客:http://butlandblog.appspot.com/ 注此模块中关于unix中的函数大部分都被略过,翻译主要针对WINDOWS,翻译速度很快,其中很多不足之处请多多包涵. 这个模块提供了一个轻便的方法使用要依赖操作系统的功能. 如何你只是想读或写文件,请使用open() ,如果你想

Python中time模块详解

在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. 在开始之前,首先要说明这几点: 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同. UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间.在中国为UTC+8.DST

Python中optionParser模块的使用方法[转]

本文以实例形式较为详尽的讲述了Python中optionParser模块的使用方法,对于深入学习Python有很好的借鉴价值.分享给大家供大家参考之用.具体分析如下: 一般来说,Python中有两个内建的模块用于处理命令行参数: 一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数: 另一个是 optparse,它功能强大,而且易于使用,可以方便地生成标准的.符合Unix/Posix 规范的命令行说明. 示例如下: ? 1 2 3 4 5 6 7 8

Python中peewee模块

Python中peewee模块,有需要的朋友可以参考下. 前言关于ORM框架: 简介: 对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换.从效果上说,它其实是创建了一个可在编程语言里使用的"虚拟对象数据库". 对象关系映射(Object-Relational Mapping)提供了概念性的.易于理解的模型化数据的方法.ORM方法论基于三个核心

Python中的模块介绍和使用

在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用import关键字引入math这个模块,下面就来了解一下Python中的模块. 说的通俗点:模块就好比是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 1.import 在Python中用关键字import来引入某个模块,比如要引用模块math,就可以在文件最开始的地方用import math来引入. 形如: importmodu