小明:最近我在做一个宿舍管理系统,需要把学生信息导出为PDF格式,有什么好的方法吗?
小李:你可以用Python的库来实现,比如reportlab或者pdfkit。这两个库都很适合生成PDF。
小明:那具体怎么操作呢?能给我一个例子吗?
小李:当然可以。下面是一个简单的例子,使用reportlab生成PDF文件。
小明:这段代码是做什么的?
小李:这个脚本创建了一个PDF文件,并在其中写入了学生的信息。你可以根据实际需求修改数据内容。
小明:那如果我想从数据库中读取数据呢?
小李:你可以先连接数据库,查询出数据,然后将这些数据传递给生成PDF的函数。
小明:明白了,谢谢!
小李:不客气,如果有其他问题,随时问我。
小明:那我先去试试看。
小李:好的,祝你顺利!
代码示例:
import pdf from reportlab.pdfgen import canvas
def generate_pdf(data, filename):
c = canvas.Canvas(filename)
for i, item in enumerate(data):
c.drawString(50, 750 - i*20, f"姓名:{item['name']},学号:{item['student_id']}")
c.save()
# 示例数据
data = [
{'name': '张三', 'student_id': '2021001'},
{'name': '李四', 'student_id': '2021002'}
]
generate_pdf(data, 'students.pdf')