python数据储存
python数据储存
csv文件的操作
安装csv包
打开cmd 执行 pip install csv
引入的模块名为csv
读取文件
with open("xx.csv","r") as f:
read_data=csv.reader(f)
for i in read_data:
print(i)//打印表的全部元素
print(i[0])//打印表的第一列元素
1
2
3
4
5
写入文件
with open("xx.csv","a",newline="") as f:
//newline=""用来消除每次写入文件时空的一行
writer=csv.writer(f)
writer.writerow(["1","2","3","4"])//一次写入一行
writer.writerows([1,2,3,4,5],[1,2,3,4,5,6])//一次写入多行
1
2
3
4
5
docx文件的操作
安装python-docx包
打开cmd 执行 pip install python-docx
引入的模块名为docx
读取文件
1.创建文件对象
file=docx.Document(文件地址)
2.获取所有段落
file.paragraphs
3.获取第n个段落的文本内容
file.paragraphs[n].text
代码示例
import docx
mystr='---------------doc_str----------------\n'
line=0
file=docx.Document(r"C:\Users\Mr.m\Desktop\sdy\web前端.docx")
for i in range(1,len(file.paragraphs)):
mystr=mystr+"段落:"+str(i)+"内容: "+file.paragraphs[i].text+"\n"
line+=1
print(len(file.paragraphs))
print(mystr)
print("line:"+str(line))
end=input("task competition")
1
2
3
4
5
6
7
8
9
10
11
写入文件
引入图片表格等尺寸控制模块
from docx.shared import Inches
1.创建文件对象
file=docx.Document()
2.添加标题
file.add_heading(“标题内容”,0)
0为标题样式 取值0-9之间
3.添加段落
p=file.add_paragraph(“段落内容”)
设置文字的风格 对齐 颜色 大小
设置风格
p.styles[‘Normal’].font.name = u’黑体’ #可换成word里面任意字体
设置对齐CENTER/ LEFT/ RIGHT
from docx.enum.text import WD_ALIGN_PARAGRAPH
p.paragraph_format.alignment = WD_ALIGN_PARAGRAPH.CENTER
设置颜色
from docx.shared import RGBColor
p.font.color.rgb = RGBColor(54,95,145)
设置文字大小
from docx.shared import Pt
p.font.size = Pt(36)
4.添加图片
pic=file.add_picture(“图片地址”,width=Inches(1.5),height=Inches(1.5))
设置图片居中
last_paragraph = document.paragraphs[-1]
last_paragraph.alignment = WD_ALIGN_PARAGRAPH.CENTER
5.添加表格
table=file.add_table(rows=2,cols=3,style=“Table Grid”)
设置某一行的高
row=table.rows[0]
row.height=Inches(0.3)
设置某一列的宽
col=table.columns[0]
col.width=Inches(0.5)
设置表格高度
from docx.oxml.ns import qn
from docx.oxml import OxmlElement
for i in range(rows): #遍历表格的所有行 rows为行数
tr = table.rows[i]._tr
trPr = tr.get_or_add_trPr(http://www.my516.com)
trHeight = OxmlElement(‘w:trHeight’)
trHeight.set(qn(‘w:val’), “450”)//450为表格高度
trPr.append(trHeight)
6.向表格里面添加文字
table.cell(i,j).text = u’表格文字’
7.添加表格行列
new_row=table.add_row(“行内容”) 添加行
new_col=table.add_col(“列内容”) 添加列
8.保存文件
file.save(“保存地址”)
---------------------
python数据储存的更多相关文章
- python网络爬虫-数据储存(七)
数据储存 主要介绍两种数据储存方法: 储存在文件中,包括text文件和csv文件 存储在数据库中,包括MySQL关系型数据库和mongoDB数据库 存储到txt title = "第一个文本 ...
- 一:1.1 python程序与数据储存【进制转换】
二进制 :0 1 [逢二进一]0+0=00+1=11+1=1011+1=100 1 1+ 1------ 100 八进制: 0 1 2 3 4 5 6 7 [逢八进一] 1+7=101+2=3 十进制 ...
- 关于python数据序列化的那些坑
-----世界上本来没那么多坑,python更新到3以后坑就多了 无论哪一门语言开发,都离不了数据储存与解析,除了跨平台性极好的xml和json之外,python要提到的还有自身最常用pickle模块 ...
- python数据分析师面试题选
以下题目均非原创,只是汇总 python数据分析部分 1. 如何利用SciKit包训练一个简单的线性回归模型 利用linear_model.LinearRegression()函数 # Create ...
- Android 里的数据储存
数据持久化 关于数据储存,这个话题已经被反复讨论过很多次了,我是不建议把网络存储这种方式纳入到数据储存的范围的,因为这个和Android没多少关系,因此就有如下的分类: 本地储存(也称之为数据持久化, ...
- Python数据抓取(1) —数据处理前的准备
(一)数据抓取概要 为什么要学会抓取网络数据? 对公司或对自己有价值的数据,80%都不在本地的数据库,它们都散落在广大的网络数据,这些数据通常都伴随着网页的形式呈现,这样的数据我们称为非结构化数据 如 ...
- 关于JAVA数据储存
关于JAVA数据储存: 在JAVA中,有六个不同的地方可以存储数据: 1. 寄存器(register) 这是最快的存储区,因为它位于不同于其他存储区的地方--处理器内部.但是寄存器的数量极其有限,所以 ...
- Android下的数据储存方式(三)
Android下最好的数据储存方式:关系型数据库sqlite. 数据库的创建:使用SqliteOpenHelper类 结合SqliteOpenHelper类和SQLiteDatabase类的帮 ...
- Android下的数据储存方式( 二)
在上一篇文章中我们介绍了SharedPreferences的使用方法. 今天我们继续介绍另一种储存数据的方式:使用内部储存和外部储存 每一个Android设备都拥有两个数据储存区域:外部储存和外部储存 ...
随机推荐
- Xpath表达式的粗介绍
关于在自动化中Xpath表达式的书写,其实我也只是刚刚入门,粗略的跟着网上的教程学了一下,这篇我就来分享总结一下我学习到的知识. 首先呢,我们先认识一下什么是Xpath.Xpath是XML路径语言,它 ...
- vuejs基础-v-for用法
Vue指令之v-for和key属性 迭代数组 <ul> <li v-for="(item, i) in list">索引:{{i}} --- 姓名:{{it ...
- Parentheses Sequence微软编程笔试
描述 You are given a sequence S of parentheses. You are asked to insert into S as few parentheses as p ...
- [NOIP2016PJ]魔法阵
今天模拟赛的题,,,唯一没有Giao出来的题(不然我就AKIOI了~) 最开始没想到数学题,把所有部分分都说一遍吧: 35分:纯暴力O(M^4)枚举,对于每一组a,b,c,d验证其是否合法. 60分: ...
- 参数化解决sql注入
用DynamicParameters: string where = " where a.is_deleted=0 and a.bvent_id=@bventId and au.user_t ...
- 手模手配置Eslint,看懂脚手架中的Eslint
使用ESLint前:eslint是干嘛的,我这样写有什么问题,怎么还报错了,太麻烦想去掉这个插件,脚手架中关于eslint文件里的配置是什么意思?怎么设置配置项和规则达到自己想要的检测效果呢?怎么集成 ...
- CSS3中resize属性
说明: resize属性是指定一个元素是否可由用户调整大小的. 语法: resize:none | both | horizontal | vertical none:用户不可一调整元素的尺寸(默认值 ...
- JS中的Boolean数据类型
Boolean布尔数据类型 只有两个字面值:true和false,这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0. 把其他类型转换为布尔类型 只有0.NaN.''.n ...
- 廖雪峰Python电子书总结
函数 1.注意:函数的默认参数必须指向不可变对象 未修改前: def add_end(L=[]): L.append('END') return L 存在的问题:如果连续调用多次,会出现多个 'END ...
- CodeForces - 343D 树链剖分
题目链接:http://codeforces.com/problemset/problem/343/D 题意:给定一棵n个n-1条边的树,起初所有节点权值为0,然后m个操作. 1 x:把x为根的子树的 ...