最常用的一种方法,利用pandas包

import pandas as pd

#任意的多组列表
a = [1,2,3]
b = [4,5,6] #字典中的key值即为csv中列名
dataframe = pd.DataFrame({'a_name':a,'b_name':b}) #将DataFrame存储为csv,index表示是否显示行名,default=True
dataframe.to_csv("test.csv",index=False,sep=',')
 
a_name  b_name
0 1 4
1 2 5
2 3 6
 

同样pandas也提供简单的读csv方法

import pandas as pd
data = pd.read_csv('test.csv')
 

会得到一个DataFrame类型的data,不熟悉处理方法可以参考pandas十分钟入门


另一种方法用csv包,一行一行写入

import csv

#python2可以用file替代open
with open("test.csv","w") as csvfile:
writer = csv.writer(csvfile) #先写入columns_name
writer.writerow(["index","a_name","b_name"])
#写入多行用writerows
writer.writerows([[0,1,3],[1,2,3],[2,3,4]])
 
index   a_name  b_name
0 1 3
1 2 3
2 3 4
 

读取csv文件用reader

import csv
with open("test.csv","r") as csvfile:
reader = csv.reader(csvfile)
#这里不需要readlines
for line in reader:
print line
 
 
如果报错,使用以下方法:
错误:UnicodeEncodeError: 'utf-8' codec can't encode characters in position 232-233: surrogates not allowed
import csv
with open(file,'w',encoding='utf8', errors='surrogatepass') as csvfile:
  csv_writer = csv.writer(csvfile)
  csv_writer.writerow(headers)
  csv_writer.writerow(row) 

最新文章

  1. C#移动跨平台开发(1)环境准备
  2. Module Zero概览
  3. android5.1 for tq335x
  4. Git使用方法
  5. PHP中file_put_contents追加时换行
  6. php 类
  7. CSS3之圆角
  8. SQLite的 SQL语法总结
  9. 编译原理Tiny语言的定义
  10. ThinkPHP3.2.3版本验证码异步第二次验证时失败的问题解决
  11. 在.net下打造mongoDb基于官方驱动最新版本
  12. LeetCode 81. Search in Rotated Sorted Array II(在旋转有序序列中搜索之二)
  13. iOS 工程默认只允许竖屏,在单独界面进行横竖转换,屏幕旋转
  14. 用Elasticsearch构建电商搜索平台,一个极有代表性的基础技术架构和算法实践案例[转]
  15. Android开发之仿微信显示更多文字的View
  16. 带着萌新看springboot源码13(手写一个自己的starter)
  17. python,魔法方法指南
  18. excel导入 服务器忘了装组件了。。。
  19. Swift学习——A Swift Tour 协议和扩展
  20. .NET AOP微型框架发布 --CleanAOP

热门文章

  1. 23. requests安装与使用
  2. Java语言基础及java核心
  3. PHP中使用raw格式发送POST请求
  4. P4363 [九省联考2018]一双木棋
  5. rem 布局代码
  6. node js 函数和对象
  7. Python面试题之“猴子补丁”(monkey patching)指的是什么?这种做法好吗?
  8. bat批处理----copy和xcopy区别
  9. malloc&&fread
  10. 2018-2-13-win10-安装Mpi