第二十一天-csv文件操作

第二十一天-csv文件操作

一、csv文件操作
  1. 创建reader

    1)csv.reader(文件对象)

    2)csv.DictReader(文件对象)

    result1 = csv.reader(open('北京高档酒店价格分析.csv',encoding='UTF-8'))
    result2 = csv.DictReader(open('北京高档酒店价格分析.csv',encoding='UTF-8'))
    
二、csv文件写操作
  1. 创建writer

    import csv
    writer = csv.writer(open('学生信息.csv','w',newline=''))
    
  2. 写入数据

    writer.writerow(['姓名','性别','年龄','分数'])
    writer.writerows([
        ['小明','男',18,90],
        ['小化','女',19,90]
    ])
    
  3. 创建字典的writer

    csv.DictReader(文件对象,字典所有的键)
    writer2 = csv.DictReader(op)
    
三、PDF文件操作
  1. 读取pdf

    1)创建reader

    reader = PdfFileReader(open('存储引擎的讲解.pdf','rb'))
    reader1 = PdfFileReader(open('美食分享.pdf','rb'))
    

    2)获取总页数

page_num = reader.numPages

print(page_num)

​ 3)获取指定页

  1. pdf写操作

    1)创建writer

    创建一个空白的pdf文件

    writer = PdfFileWriter()
    

    2)添加页

    writer.addPage(page1)
    writer.addBlankPage()
    

    3)保存数据

    writer.write(open('new_data.pdf','wb'))
    
四、添加水印
import reportlab as reportlab
from PyPDF2 import PdfFileReader,PdfFileWriter
  1. 准备水印和原文件

    water_reader = PdfFileReader(open('watermark.pdf','rb'))
    file_reader = PdfFileReader(open('存储引擎的讲解.pdf','rb'))
    
  2. 水印对应页

    water_page = water_reader.getPage(0)
    
  3. 获取需要添加水印的水印页

    page1 = file_reader.getPage(0)
    
  4. 合并水印页和添加水印页

    page1.mergePage(water_page)
    
  5. 准备空的pdf文件保存水印效果

    writer = PdfFileWriter()
    writer.addPage(page1)
    writer.write(open('水印效果.pdf','wb'))
    
五、创建水印文件
from reportlab.pdfgen import canvas        #提供pdf文件
from reportlab.pdfbase import pdfmetrics                #注册字体
from reportlab.pdfbase.ttfonts import TTFont          #提供字体对象
  1. 注册字体

    pdfmetrics.registerFont(TTFont('字体1','青呱石头体.ttf'))
    
  2. 创建空白pdf

    pdf = canvas.Canvas('water.pdf')
    
  3. 渲染

    1)设置字体

    pdf.setFont('字体1',30)
    

    2)设置文字颜色

    pdf.setFillColorRGB(0.3,0.4,0.5,0.5)
    

    3)旋转

    pdf.rotate(45)
    

    4)渲染文字

    pdf.drawString(300,400,'张小海')
    

    5)保存水印

    pdf.save()
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值