[Python Study Notes]csv文件操作
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
>>文件: csv文件操作.py
>>作者: liu yang
>>邮箱: liuyang0001@outlook.com
>>博客: www.cnblogs.com/liu66blog ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # !/usr/bin/env python
# -*- coding: utf-8 -*- import sys, os
import csv data_list = \
[
['name', 'age'],
['施名阳', 24],
['宋长武', 23],
['马云伟', 23],
] # 写csv文件,加入newline='',防止每次都写入新行
with open('待写入csv文件.csv', 'w+', newline='', encoding='utf-8') as fp:
csv_fp_write = csv.writer(fp)
# 按行写入
# for row in data_list:
# csv_fp_write.writerow(row) # 一次写入多行
csv_fp_write.writerows(data_list) # 使用csv.reader读文件
with open('待写入csv文件.csv', 'r', newline='', encoding='utf-8') as fp:
csv_fp_read = csv.reader(fp)
csv_list = list(csv_fp_read)
print(csv_list) ######################################################################################
###################################################################################### data_dict = \
[
{'name': '施名阳', 'age': 24},
{'name': '宋长武', 'age': 23},
{'name': '马云伟', 'age': 23},
] # 使用csv.DictWriter写文件
with open('待写入csv文件.csv', 'w+', newline='', encoding='utf-8') as fp:
headers = ['name', 'age']
csv_fp_write_dict = csv.DictWriter(fp, headers)
csv_fp_write_dict.writeheader()
# 按照行写入
# for data in data_dict:
# csv_fp_write_dict.writerow(data) # 一次写入多行
csv_fp_write_dict.writerows(data_dict) # 使用csv.DictReader读取文件
with open('待写入csv文件.csv', 'r+', newline='', encoding='utf-8') as fp:
# 按照字典一次性读取
csv_fp_read_dict = csv.DictReader(fp)
# 取得字典key值
headers = csv_fp_read_dict.fieldnames
print(headers)
# 将可迭代列表化
csv_fp_read_dict_list = list(csv_fp_read_dict)
print(csv_fp_read_dict_list)
# 定义一个空列表,用来存储字典列表
csv_dict_list = []
# 魂环读取到的列表,将其包装成字典,append到列表
for csv_line in csv_fp_read_dict_list:
csv_dict_list.append({headers[0]: csv_line[headers[0]], headers[1]: csv_line[headers[1]]})
print(csv_dict_list)

[Python Study Notes]csv文件操作的更多相关文章
- python在处理CSV文件时,字符串和列表写入的区别
概述 Python在处理CSV文件时,如果writerow的对象是<type 'unicode'>字符串时,写入到CSV文件时将会出现一个字符占一个单元格的情况: 但是将字符串转换为列表类 ...
- java csv 文件 操作类
一个CSV文件操作类,功能比较齐全: package tool; import java.io.BufferedReader; import java.io.BufferedWriter; impor ...
- [Python Study Notes]一个简单的区块链结构(python 2.7)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...
- [Python Study Notes]pd.read_csv()函数读取csv文件绘图
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...
- [Python Study Notes]文件操作
文件操作 对文件操作流程 打开文件,可添加filepath打开某绝对路径下的文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 # The_author = 'liu66' # -* ...
- 使用Python对Csv文件操作
csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格: 就可以存储为csv文件,文件内容是: No.,Name,Age,Score 1,mayi, ...
- [Python Study Notes] Basic I\O + File 操作
列表操作 Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式. ...
- Python csv文件操作
一.open文件打开和with open as 文件打开的区别 file= open("test.txt","r") try: for line in file ...
- Python基础7:文件操作
[ 文件操作] 1 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧 ...
随机推荐
- Java读取lob格式数据
想要读出lob里面的图片数据,就要确认clob里面存储的是什么,一般情况下存储的base64的串串.所以就以base64为例,而Blob里面存储的大部分是图片数据,但也有xml内容数据. 1查询lob ...
- 2017-03-05 CentOS中结合Nginx部署dotnet core Web应用程序
Visual Studio Live 倒计时2天,当然这是美国倒计时两天,中国应该是在3月8日的凌晨,正值"3.8妇女节".提前祝广大的女性同志节日快乐,当然还有奋斗在一线的程序媛 ...
- NSObject头文件解析 / 消息机制 / Runtime解读 (二)
本章接着NSObject头文件解析 / 消息机制 / Runtime解读(一)写 给类添加属性: BOOL class_addProperty(Class cls, const char *name, ...
- MySQL 索引 视图 触发器 存储过程 函数
1.索引 索引相当于图书的目录,可以帮助用户快速的找到需要的内容. 数据库利用各种各样的快速定位技术,能够大大提高查询效率.特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万 ...
- L120 单词造句
The old lady sits on a mobile chair every morning.The book contains scandalous text. The current sur ...
- Qt之事件处理机制
思维导读 一.事件简介 QT程序是事件驱动的, 程序的每个动作都是由内部某个事件所触发.QT事件的发生和处理成为程序运行的主线,存在于程序整个生命周期. 常见的QT事件类型如下: 键盘事件: 按键按下 ...
- bzoj 4059:Non-boring sequences 分治
题目: 我们害怕把这道题题面搞得太无聊了,所以我们决定让这题超短.一个序列被称为是不无聊的,仅当它的每个连续子序列存在一个独一无二的数字,即每个子序列里至少存在一个数字只出现一次.给定一个整数序列,请 ...
- BZOJ3809:Gty的二逼妹子序列
浅谈莫队:https://www.cnblogs.com/AKMer/p/10374756.html 题目传送门:https://lydsy.com/JudgeOnline/problem.php?i ...
- Visualforce入门第三篇_2017.3.2
Visualforce实现显示Record List(列表) 详细见链接:https://trailhead.salesforce.com/modules/visualforce_fundamenta ...
- ajax中error函数参数详解
xhr.status和error函数中的status是不一样的,error函数中的status主要包括:"success"."notmodified".&quo ...