Python常见读写文件操作实例总结【文本、json、csv、pdf等】

yizhihongxing

Python常见读写文件操作实例总结

本文将介绍在Python中针对常见文件类型的读写操作,包括文本、JSON、CSV以及PDF等格式。

文本文件读写

读取文本文件

读取文本文件很简单,可以使用Python内置的open()函数来打开文件,然后读取文件的内容。open()函数接收两个参数,第一个参数是要读取的文件的路径,第二个参数是打开文件的模式,我们这里使用默认的文本模式。

with open('file.txt') as f:
    contents = f.read()
    print(contents)

如果要逐行读取文本文件,可以使用readlines()方法:

with open('file.txt') as f:
    lines = f.readlines()
    for line in lines:
        print(line.rstrip())

写入文本文件

要将内容写入文本文件,需要使用文件对象的write()方法。注意,在写入文件之前需要开启写入模式,使用w模式。如果文件已经存在,写入模式会覆盖原有的文件内容,如果文件不存在,则会自动创建一个新的文件。

with open('file.txt', 'w') as f:
    f.write('Hello, world!')

JSON文件读写

JSON是一种轻量级的数据交换格式,在Python中,可以使用内置的json模块来对JSON数据进行解码和编码。

读取JSON文件

使用json.load()函数从JSON文件中读取内容,该函数将返回一个Python字典对象,其中包含了JSON文件中的数据。

import json

with open('data.json') as f:
    data = json.load(f)
    print(data)

写入JSON文件

使用json.dump()函数将Python字典对象转化为JSON格式并写入文件。该函数接收两个参数,第一个参数是要写入JSON文件的内容,第二个参数是表示要将JSON数据写入到哪个文件中。

import json

data = {
    'name': 'Alice',
    'age': 25,
    'city': 'Beijing'
}

with open('data.json', 'w') as f:
    json.dump(data, f)

CSV文件读写

CSV是一种常见的存储数据的文件格式,使用Python内置的csv模块可以方便地处理CSV文件。

读取CSV文件

使用csv.reader()函数从CSV文件中读取内容,该函数将返回一个读取器对象,可以通过迭代器的方式逐行读取CSV文件中的数据。

import csv

with open('data.csv') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

写入CSV文件

使用csv.writer()函数将Python列表或元组对象转化为CSV格式并写入文件。该函数接收一个参数,表示要将数据写入到哪个文件中。

import csv

data = [
    ['name', 'age', 'city'],
    ['Alice', 25, 'Beijing'],
    ['Bob', 30, 'Shanghai'],
    ['Charlie', 35, 'Guangzhou']
]

with open('data.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    for row in data:
        writer.writerow(row)

PDF文件读写

PDF是一种常见而复杂的文件格式,Python内置的函数并没有直接处理PDF的方法。可以使用第三方库PyPDF2来读取和操作PDF文件。

读取PDF文件

使用PyPDF2.PdfFileReader()函数打开PDF文件并读取内容,该函数将返回一个PyPDF2.PdfFileReader对象,可以使用该对象的方法获取PDF中的信息。

import PyPDF2

with open('data.pdf', 'rb') as f:
    reader = PyPDF2.PdfFileReader(f)
    num_pages = reader.getNumPages()
    for i in range(num_pages):
        page = reader.getPage(i)
        page_content = page.extractText()
        print(page_content)

写入PDF文件

使用PyPDF2.PdfFileWriter()函数创建一个新的PDF文件,并使用该对象的方法向文件中写入内容。该函数不接受任何参数,直接调用即可。

import PyPDF2

writer = PyPDF2.PdfFileWriter()

# 向第一页写入内容
page = PyPDF2.PageObject.createBlankPage(None, 612, 792)
page.mergePage(reader.getPage(0))
text = PyPDF2.pdf.TextStringObject("Hello, world!")
page.mergeTextObject(text, 100, 100)
writer.addPage(page)

# 向第二页写入内容
page = PyPDF2.PageObject.createBlankPage(None, 612, 792)
text = PyPDF2.pdf.TextStringObject("This is a PDF file written by Python.")
page.mergeTextObject(text, 100, 100)
writer.addPage(page)

# 将PDF文件写入磁盘
with open('data.pdf', 'wb') as f:
    writer.write(f)

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python常见读写文件操作实例总结【文本、json、csv、pdf等】 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • C语言宏定义容易认不清的盲区梳理

    C语言宏定义容易认不清的盲区梳理 在C语言中,宏定义可以方便地定义一些常量、变量、函数等。然而,在使用宏定义时也有一些容易混淆的盲区,这里给出一些梳理。 1. 宏定义和函数定义的区别 宏定义和函数定义都可以定义函数(或函数形式的代码块),但二者存在明显的区别。 宏定义直接将定义的字符串替换到代码中,而函数需要调用才能执行。 #define SQUARE(x)…

    C 2023年5月23日
    00
  • c语言处理函数调用的方法

    C语言中处理函数调用的方法是程序设计中非常基础和重要的知识。以下是处理函数调用的方法的完整攻略,包括两个示例: 函数调用方法 在C语言中,函数通常被定义在程序的顶部,并在需要的时候被调用。函数调用是通过函数名、左括号、函数参数、右括号来完成的。下面是函数调用的基本语法: function_name(arguments); 在上面的语法中,function_n…

    C 2023年5月23日
    00
  • Redhat 6.2 下 oracle 11g R2的安装详解第2/2页

    让我来详细讲解 “Redhat 6.2 下 oracle 11g R2的安装详解第2/2页” 的完整攻略。 前言 安装 Oracle 数据库是一个比较复杂的过程,需要仔细阅读并按照官方文档或者其他详细攻略一步一步操作。本攻略是基于 Redhat 6.2 系统,讲解 Oracle 11g R2 的安装步骤。 步骤 准备环境 在安装 Oracle 之前,需要安装…

    C 2023年5月23日
    00
  • 如何利用C语言实现最简单的HTTP服务器详解

    标题:如何利用C语言实现最简单的HTTP服务器详解 介绍 本教程将向你展示如何使用C语言来实现一个最简单的HTTP服务器。HTTP(超文本传输协议)是用于在Web上传输数据的基本协议。实现HTTP服务器的基本思想是接受来自客户端(Web浏览器、爬虫等)的HTTP请求,解析出请求的内容,然后向客户端返回HTTP响应(HTML页面、图片等)。本教程假设您已经了解…

    C 2023年5月22日
    00
  • 如何理解C++指针常量和常量指针

    下面给你详细讲解如何理解C++指针常量和常量指针。 1. 指针常量 1.1 概念介绍 指针常量是指一个指针被定义为常量(值不能被改变),而指针所指向的变量的值可以变化。在定义指针常量时,必须把指针初始化为某个地址。 1.2 示例说明 以下是一个指针常量的示例: #include <iostream> using namespace std; in…

    C 2023年5月23日
    00
  • C语言实现简单班级成绩管理系统

    C语言实现简单班级成绩管理系统 本文将详细讲解如何使用C语言实现班级成绩管理系统,包括创建数据结构、实现各种功能以及存储数据等。下面将详细介绍具体的步骤。 步骤一:创建数据结构 首先,要创建一个数据结构来存储学生的信息。这个数据结构应该包含以下信息: 学生ID 学生姓名 数学成绩 语文成绩 英语成绩 平均分 例如,可以使用以下代码来创建这个数据结构: str…

    C 2023年5月23日
    00
  • C语言实现航班管理系统

    C语言实现航班管理系统 简介 航班管理系统是一个能够记录航班信息并对其进行管理的软件程序。它可以记录航班的基本信息,如航班号、起飞地、目的地、起飞时间、到达时间、机型等,并提供相应的查询、修改、删除等功能。在本篇文章中,我们将使用C语言创建一个简单的航班管理系统。 步骤 步骤1: 创建一个结构体来保存航班信息 首先,我们需要创建一个结构体来存储航班信息。每一…

    C 2023年5月22日
    00
  • win7系统打开程序提示应用程序正常初始化0xc0000142失败的原因及解决方法

    win7系统打开程序提示应用程序正常初始化0xc0000142失败的原因及解决方法 问题描述 在使用Windows 7系统时,打开应用程序时会出现提示“应用程序无法启动,应用程序无法正常初始化(0xc0000142)。单击确认关闭应用程序。”的错误提示。 原因分析 0xc0000142错误通常指的是程序无法正常初始化,可能由于以下原因导致: 应用程序的关键文…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部