python列表、字典与csv
在日常数据分析时最常打交道的是csv文件和list,dict类型。涉及到的主要需求有:
- 将一个二重列表[[],[]]写入到csv文件中
- 从文本文件中读取返回为列表
- 将一字典写入到csv文件中
- 从csv文件中读取一个字典
- 从csv文件中读取一个计数字典
实现如下:
# 功能:将一个二重列表写入到csv文件中
# 输入:文件名称,数据列表
def createListCSV(fileName="", dataList=[]):
with open(fileName, "wb") as csvFile:
csvWriter = csv.writer(csvFile)
for data in dataList:
csvWriter.writerow(data)
csvFile.close
》
# 功能:从文本文件中读取返回为列表的形式
# 输入:文件名称,分隔符(默认,)
def readListCSV(fileName="", splitsymbol=","):
dataList = []
with open(fileName, "r") as csvFile:
dataLine = csvFile.readline().strip("\n")
while dataLine != "":
tmpList = dataLine.split(splitsymbol)
dataList.append(tmpList)
dataLine = csvFile.readline().strip("\n")
csvFile.close()
return dataList
》
# 功能:将一字典写入到csv文件中
# 输入:文件名称,数据字典
def createDictCSV(fileName="", dataDict={}):
with open(fileName, "wb") as csvFile:
csvWriter = csv.writer(csvFile)
for k,v in dataDict.iteritems():
csvWriter.writerow([k,v])
csvFile.close()
》
# 功能:从csv文件中读取一个字典
# 输入:文件名称,keyIndex,valueIndex
def readDictCSV(fileName="", keyIndex=0, valueIndex=1):
dataDict = {}
with open(fileName, "r") as csvFile:
dataLine = csvFile.readline().strip("\n")
while dataLine != "":
tmpList = dataLine.split(splitsymbol)
dataDict[tmpList[keyIndex]] = tmpList[valueIndex]
dataLine = csvFile.readline().strip("\n")
csvFile.close()
return dataDict
》
# 功能:从csv文件中读取一个计数字典
# 输入:文件名称,keyIndex
def readDictCSV(fileName="", keyIndex=0):
dataDict = {}
with open(fileName, "r") as csvFile:
dataLine = csvFile.readline().strip("\n")
while dataLine != "":
tmpList = dataLine.split(splitsymbol)
if dataDict.get(tmpList[keyIndex]) == None:
dataDict[tmpList[keyIndex]] = 0
dataDict[tmpList[keyIndex]] = dataDict.get(tmpList[keyIndex]) + 1
dataLine = csvFile.readline().strip("\n")
csvFile.close()
return dataDict
python列表、字典与csv的更多相关文章
- python :列表 字典 集合 类 ----局部变量可以改全局变量
#列表 字典 集合 类 ----局部变量可以改全局变量,除了整数和字符串 names=["alex","jack","luck"] def ...
- python 列表,字典,元组,字符串,QuerySet之间的相互转换
1. 列表转换成字典list1 = ['key1','key2','key3']list2 = ['value1','value2'] dict1 = zip(list1,list2) # dict( ...
- python 列表 字典 读写文件:pickle模块的基本使用
python数据持久存储:pickle模块的基本使用(转载) 作者: pzxbc 出处: http://pzxbc.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保 ...
- python 列表 字典转json
一.Dictionary 转为JSON 将dict转为JSON,这里利用包json import jsonaItem = {}aItem["id"] = "2203&qu ...
- python 列表字典按照字典中某个valu属性进行排序
对用户名进行排序 1. 直接上代码 base_dn_list = [ {', 'tenant': 'HAD', 'role': {'roleID': 'project', 'roleName': '项 ...
- python列表、元祖、字典
python列表 ['a','1','vs2'] 里面的值可以改 python元祖 ('a','1','css','sdf12') 里面的值不能改 python字典 {'s ...
- Python列表、元组、字典和字符串的常用函数
Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...
- [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
随机推荐
- VC版本的MakeObjectInstance把WNDPROC映射到类的成员函数
这段时间用VC封装Windows类库,没有MakeObjectInstance处理窗口消息确实不爽,又不想使用MFC的消息映射,这玩意的效率和美观只能呵呵. 至于MakeObjectInstance是 ...
- c语言小练习(蛮好玩的)
1.求三个数的平均数,要求保留三位小数位 #include <conio.h> #include<stdio.h> int main(){ int a,b,c; float a ...
- Instant Complexity(模拟,递归)
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 1535 Accepted: 529 Description Analyz ...
- C语言基础课程 第一课 Linux环境配置小实战httpserver
网段我需要改成如下 10.重启网络服务 并且查看ip 11. 打开windows的浏览器数人Linux的IP地址出现REDHAT的欢迎界面 11.进入目录 12.编写一个简单的html脚本 13 ...
- 3C Tic-tac-toe
题目大意: 两个选手轮流在 3*3的矩阵上作标记,一个选手总是画一个‘X’, 另一个选手总是画一个‘0’,谁先在水平线上或者垂直线上,或者对角线上,先完成三个点连在一块,谁就赢.画‘×’的选手是第一个 ...
- 【转】java中float与byte[]的互转 -- 不错
原文网址:http://tjmljw.iteye.com/blog/1767716 起因:想把一个float[]转换成内存数据,查了一下,下面两个方法可以将float转成byte[]. 方法一 imp ...
- FZYZ-2071 A Simple Math Problem IX
P2071 -- A Simple Math Problem IX 时间限制:1000MS 内存限制:262144KB 状态:Accepted 标签: 数学问题-博弈论 ...
- HDOJ(HDU) 2106 decimal system(进制相互转换问题)
Problem Description As we know , we always use the decimal system in our common life, even using the ...
- Chrome DevTools学习笔记
---恢复内容开始--- chrome和firefox的开发者工具大同小异,都非常强大.今天在博客园上看了这篇文章(http://www.cnblogs.com/Wayou/p/chrome-cons ...
- (转)【C++ STL】细数C++ STL 的那些事 -- priority_queue(优先队列)
装载自http://blog.csdn.net/tianshuai1111/article/details/7652553 一,概述 priority_queue是拥有权值观念的queue,它允许加入 ...