python高阶、数据分析、自动化办公

191 阅读2分钟

对文件的操作

Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

注意: 使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

open(file, mode='r')

完整的语法格式为:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

参数说明:

  • file: 必需,文件路径(相对或者绝对路径)。
  • mode: 可选,文件打开模式

有很多参数:

  1. r: 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

  2. W: 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。w

  • buffering: 设置缓冲
  • encoding: 一般使用utf8
  • errors: 报错级别
  • newline: 区分换行符
  • closefd: 传入的file参数类型
  • opener: 设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。

文件最基础的读写

file = open("D:/file1.txt",'w')
con = 'wwwwwww12'
print(file.write(con))
file.close()

file = open("D:/file1.txt",'r')
data = file.read(2)
print(data)
file.close()

包的安装

我们由于有python和anaconda两个环境,所以直接在cmd里pip会安装到python里,所以我们要先打开anaconda prompt然后用pip就行了

D:\Python\anacondainstall\Lib\site-packages

3%1B7P9$[7VT5GAOJ4D@1]J.png

自动化办公

输出word

from docx import Document
from random import choice
from docx.shared import Inches
from docx.enum.style import WD_STYLE_TYPE
from openpyxl import load_workbook
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.shared import Pt,RGBColor
from docx.oxml.ns import qn

def writeText(fn):
    document = Document()
    while(1):
        text = input("输入内容")
        if(text == '/0'):
            break
        document.add_paragraph(text)
    document.save(fn)

print('----------------')
wordFn = input('请输入地址')
writeText(wordFn)

输入word

from docx import Document
from random import choice
from docx.shared import Inches
from docx.enum.style import WD_STYLE_TYPE
from openpyxl import load_workbook
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.shared import Pt,RGBColor
from docx.oxml.ns import qn

def readText(fn):
    document = Document(fn)
    text = document.paragraphs
    print(text)
    print(len(text))  # 打印结果:20
#     for q in text:
#         print(q.text)
    for i in range(0,len(text)):
        print(text[i].text)
    
# wordFn = input('请输入地址')
readText('C:/Users/86187/Desktop/new.docx')

(119条消息) 【2.5万字】详解 Python-docx 自动生成word图文报告_python 图文并茂word 报告_岳涛@心馨电脑的博客-CSDN博客