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数据储存的更多相关文章

  1. python网络爬虫-数据储存(七)

    数据储存 主要介绍两种数据储存方法: 储存在文件中,包括text文件和csv文件 存储在数据库中,包括MySQL关系型数据库和mongoDB数据库 存储到txt title = "第一个文本 ...

  2. 一: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 十进制 ...

  3. 关于python数据序列化的那些坑

    -----世界上本来没那么多坑,python更新到3以后坑就多了 无论哪一门语言开发,都离不了数据储存与解析,除了跨平台性极好的xml和json之外,python要提到的还有自身最常用pickle模块 ...

  4. python数据分析师面试题选

    以下题目均非原创,只是汇总 python数据分析部分 1. 如何利用SciKit包训练一个简单的线性回归模型 利用linear_model.LinearRegression()函数 # Create ...

  5. Android 里的数据储存

    数据持久化 关于数据储存,这个话题已经被反复讨论过很多次了,我是不建议把网络存储这种方式纳入到数据储存的范围的,因为这个和Android没多少关系,因此就有如下的分类: 本地储存(也称之为数据持久化, ...

  6. Python数据抓取(1) —数据处理前的准备

    (一)数据抓取概要 为什么要学会抓取网络数据? 对公司或对自己有价值的数据,80%都不在本地的数据库,它们都散落在广大的网络数据,这些数据通常都伴随着网页的形式呈现,这样的数据我们称为非结构化数据 如 ...

  7. 关于JAVA数据储存

    关于JAVA数据储存: 在JAVA中,有六个不同的地方可以存储数据: 1. 寄存器(register) 这是最快的存储区,因为它位于不同于其他存储区的地方--处理器内部.但是寄存器的数量极其有限,所以 ...

  8. Android下的数据储存方式(三)

      Android下最好的数据储存方式:关系型数据库sqlite.   数据库的创建:使用SqliteOpenHelper类 结合SqliteOpenHelper类和SQLiteDatabase类的帮 ...

  9. Android下的数据储存方式( 二)

    在上一篇文章中我们介绍了SharedPreferences的使用方法. 今天我们继续介绍另一种储存数据的方式:使用内部储存和外部储存 每一个Android设备都拥有两个数据储存区域:外部储存和外部储存 ...

随机推荐

  1. 从有状态应用(Session)到无状态应用(JWT),以及 SSO 和 OAuth2

    不管用哪种方式认证用户,都可能被中间人攻击窃取 SessionID 或 Token,从而发生 CSRF 攻击.解决方式就是全站 HTTPS.现在 Let's Encrypt 已经支持免费的通配符 HT ...

  2. Vagrant 手册之 box - box 的文件格式

    原文地址 过去,box 只是 VirtualBox 导出的 tar 文件.由于 Vagrant 现在支持多个 provider 和版本控制,box 文件稍微复杂一些. 用于 Vagrant 1.0.x ...

  3. 04 | 基础篇:经常说的 CPU 上下文切换是什么意思?(下)

    上一节,我给你讲了 CPU 上下文切换的工作原理.简单回顾一下,CPU 上下文切换是保证 Linux 系统正常工作的一个核心功能,按照不同场景,可以分为进程上下文切换.线程上下文切换和中断上下文切换. ...

  4. 找不到/lib/modules/../build文件夹

    :解决了make: *** /lib/modules/3.2.0-4-amd64/build: 没有那个文件或目录的问题,更新一下软件列表,然后sudo apt-get install linux-h ...

  5. 【报错】The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

    提交表单之后, 报错页面显示: HTTP Status 404 – 未找到 Type Status Report 消息 Not found 描述 The origin server did not f ...

  6. TCP协议分析(包结构)---转

    TCP首部格式 tcp数据是被封装在IP数据包中的,和udp类似,在IP数据包的数据部分.tcp数据包的格式如下: 源端口号和目的端口号(寻址)与udp中类似,用于寻找发端和收端应用进程.这两个值加上 ...

  7. 5.1properties属性

    需求: 将数据库连接参数单独配置在db.properties文件中,只需在SqlMapconfig.xml中加载db.properties的属性值. 在SqlMapconfig.xml中就不需要对数据 ...

  8. hdu6333 Problem B. Harvest of Apples(组合数+莫队)

    hdu6333 Problem B. Harvest of Apples 题目传送门 题意: 求(0,n)~(m,n)组合数之和 题解: C(n,m)=C(n-1,m-1)+C(n-1,m)    设 ...

  9. redhat6.5单用户重置root密码

    (1),按 “e” 键进入该界面,继续按 “e” 键进入下一个界面. (2).上下键选中第二个kernel选项,继续按 “e” 键进行编辑. (3).在新的界面里面加一个空格,再输入“1”:或者输入“ ...

  10. 【问题解决方案】Linux中进入目录下文件夹

    win系统中直接 cd+空格+文件夹名 Linux下 cd+空格+./+文件名 其中句点表示"当前目录" 除非在根目录不加,或者把路径写全用绝对路径进入 Linux下切换路径的相关 ...