Python创建7种不同的文件格式的方法总结
作者:欣一 时间:2021-01-24 03:13:51
今天的这篇文章呢,小编来介绍一下如何通过Python
来创建各种形式的文件,这里包括了
文本文件
CSV
文件Excel
文件压缩文件
XML
文件JSON
文件PDF
文件
1.创建文本文件
文本文件本质上是以.txt
后缀结尾的文件,在Python
当中创建文本文件是非常的容易和简单的,代码如下
# 通过Python来创建文本文件
# 选择文件的名称
file_name = "my_text_file.txt"
# 将内容写入至文件中
texts = "Hi, How do you doing?"
# 打开文件,编辑模式
with open(file_name, "w") as file:
file.write(texts)
# 打印创建文本文件成功的信息
print(f"{file_name} 创建成功!")
当然了要是我们想要来读取该文件当中的内容,代码也非常的简单,如下所示
# 用Python读取文本文件
# 文件的名称
file_name = "my_text_file.txt"
# 打开文件,读取当中的内容
with open(file_name, "r") as file:
texts = file.read()
# 打印文本文件中的内容
print(texts)
2.创建CSV文件
CSV
文件在我们的日常生活学习当中也是非常常用的,要想创建CSV
文件,这里就需要用到Python
当中的CSV
模块,代码也是十分的简单,如下所示
import csv
# 文件的名称
file_name = "my_csv_file.csv"
# 打开文件,并且是编辑的模式
with open(file_name, "w") as file:
writer = csv.writer(file)
# 编辑内容
writer.writerow(["Number", "Name", "Company"])
writer.writerow([1, "Elon Musk", "Tesla"])
writer.writerow([2, "Bill Gates", "Microsoft"])
writer.writerow([3, "Jeff Bezos", "Amazon"])
writer.writerow([4, "Steve Jobs", "Apple"])
# 打印编辑成功的消息
print(f"{file_name} 创建成功!")
当然了我们这里还可以调用writerows()
方法,代码如下
# CSV文件的名称
file_name = "my_csv_file.csv"
# 写入的内容
content = [
["Number", "Name", "Company"],
[1, "Elon Musk", "Tesla"],
[2, "Bill Gates", "Microsoft"],
[3, "Jeff Bezos", "Amazon"],
[4, "Steve Jobs", "Apple"]
]
# 打开文件并且开启编辑的模式
with open(file_name, "w") as file:
# 创建编辑的工具
writer = csv.writer(file)
writer.writerows(content)
# 打印出文件创建成功的消息
print(f"{file_name} 创建成功!")
我们来看一下文件当中的内容,如下所示
那么当我们想要来读取该CSV
文件的时候,就需要下面的这个代码,如下所示
# CSV文件的名称
file_name = "my_csv_file.csv"
# 打开文件,读取文件的模式
with open(file_name, "r") as file:
# 创建读取文件的工具
reader = csv.reader(file)
for record in reader:
print(record)
output
['Number', 'Name', 'Company']
['1', 'Elon Musk', 'Tesla']
['2', 'Bill Gates', 'Microsoft']
['3', 'Jeff Bezos', 'Amazon']
['4', 'Steve Jobs', 'Apple']
3.创建Excel文件
这里我们需要用到openpyxl
模块,要是你还没有下载该模块,这里就需要用到pip
命令来实现模块的安装了,如下
pip install openpyxl
创建Excel
文件的方式也特别简单,代码如下
# 导入模块
from openpyxl import Workbook
# Excel文件的文件名
file_name = "my_excel_file.xlsx"
# 创建文件的工具
workbook = Workbook()
sheet_1 = workbook.active
编辑Excel
文件的方式有三种,我们这里一一来介绍一下,第一种是在指定的单元格当中放入需要填充的内容,代码如下
# 通过指定单元格的位置来填充内容
# 第一条记录
sheet_1["A1"] = "S. no"
sheet_1["B1"] = "Name"
sheet_1["C1"] = "Company"
# 第二条记录
sheet_1["A2"] = "1"
sheet_1["B2"] = "Elon Musk"
sheet_1["C2"] = "Tesla"
# 第三条记录
sheet_1["A3"] = "2"
sheet_1["B3"] = "Bill Gates"
sheet_1["C3"] = "Microsoft"
# 第四条记录
sheet_1["A4"] = "3"
sheet_1["B4"] = "Jeff Bezos"
sheet_1["C4"] = "Amazon"
# 保存文件
workbook.save(file_name)
方法二的话和方法一是十分相类似的,代码如下
# 通过指定单元格的位置来填充内容
# 第一条记录
sheet_1.cell(row=1, column=1).value = "Number"
sheet_1.cell(row=1, column=1).value = "Name"
sheet_1.cell(row=1, column=1).value = "Company"
# 第二条记录
sheet_1.cell(row=1, column=1).value = "1"
sheet_1.cell(row=1, column=1).value = "Elon Musk"
sheet_1.cell(row=1, column=1).value = "Tesla"
# 第三条记录
sheet_1.cell(row=1, column=1).value = "2"
sheet_1.cell(row=1, column=1).value = "Bill Gates"
sheet_1.cell(row=1, column=1).value = "Microsoft"
# 第四条记录
sheet_1.cell(row=1, column=1).value = "3"
sheet_1.cell(row=1, column=1).value = "Jeff Bezos"
sheet_1.cell(row=1, column=1).value = "Amazon"
# 保存文件
workbook.save(file_name)
方法三,通过调用append()
方法来实现往Excel
文件当中填充内容,代码如下
# 一系列的数据内容
records = [
["Number", "Name", "Company"],
[1, "Elon Musk", "Tesla"],
[2, "Bill Gates", "Microsoft"],
[3, "Jeff Bezos", "Amazon"]
]
# append()方法填充内容
for record in records:
sheet_1.append(record)
# 保存文件
workbook.save(file_name)
我们来看一下文件当中的内容,如下所示
而要是我们来读取一下文件当中的内容,代码如下,这里需要用到iter_rows()
# 导入模块
import openpyxl
# 文件名的名称
file_name = "my_excel_file.xlsx"
# 加载Excel文件
workbook = openpyxl.load_workbook(file_name)
sheet_1 = workbook.active
# 开始读取的行的位置
min_row = sheet_1.min_row
# 读取行的位置读取到哪儿
max_row = sheet_1.max_row
# 开始读取单元格的位置
min_col = sheet_1.min_column
# 单元格读取的最终的位置
max_col = sheet_1.max_column
for record in sheet_1.iter_rows(min_row, max_row, min_col, max_col):
for cell in record:
print(cell.value, end=" ")
print()
output
Number Name Company
1 Elon Musk Tesla
2 Bill Gates Microsoft
3 Jeff Bezos Amazon
4.创建压缩文件
在Python
当中来创建压缩文件是非常简单的,这里需要用到tarfile
模块,代码如下
# 导入模块
import tarfile
# 打开压缩文件,编辑模式
with tarfile.open("my_tar_file.tar", "w") as file:
# 添加txt文本文件,并且指定文件的名称
file.add("text_file_1.txt")
file.add("text_file_2.txt")
# 打印创建成功的消息
print("压缩包创建成功!")
要是我们想要解压缩 压缩包当中的文件,这里就可以用到extractall()
方法,代码如下
# 导入模块
import tarfile
# 解压缩文件的名称
filename = "my_tar_file.tar"
# 查看文件是否是压缩文件的格式
if tarfile.is_tarfile(filename):
# 打开文件
with tarfile.open(filename, "r") as file:
# 解压缩全部的文件
file.extractall()
# 打印解压缩成功的消息
print(f"{filename} 解压缩成功!")
那么要是我们想要打印出来解压缩文件当中的文件名,代码也非常的简单,如下所示
# 导入模块
import tarfile
# 解压缩包的名称
filename = "my_tar_file.tar"
# 检查文件是否是压缩包的格式
if tarfile.is_tarfile(filename):
# 打开文件
with tarfile.open(filename, "r") as file:
# 解压缩文件当中的文件名称
files = file.getnames()
# 遍历循环文件名
for file in files:
print(file)
从压缩包中,解压缩出指定的文本文件,代码如下
# 导入模块
import tarfile
# 解压缩包的名称
filename = "my_tar_file.tar"
# 检查文件是否是压缩包的格式
if tarfile.is_tarfile(filename):
# 打开文件
with tarfile.open(filename, "r") as file:
# 获取解压缩包中文件的名称
files = file.getnames()
# 输入你想要解压缩的文件名
fname_to_extract = "text_file_1.txt"
# 检查文本文件是否存在
if fname_to_extract in files:
# 解压缩指定的文件出来
file.extract(fname_to_extract)
# 打印成功
print("File extracted successfully")
5.创建XML文件
在Python
当中创建XML
文件就需要用到xml
模块,我们这里定义一个函数来创建XML
文件,代码如下
# 导入模块
import xml.etree.ElementTree as xml
# 函数方法来创建XML文件
def create_XML_file(filename):
# Root element -> Mobile_shop
root = xml.Element("Mobile_shop")
# Root element -> mobile_names
mobile = xml.Element("mobile_names")
root.append(mobile)
# Sub Elements -> mobile names
mobile_1 = xml.SubElement(mobile, "mobile_1")
mobile_1.text = "Vivo"
mobile_2 = xml.SubElement(mobile, "mobile_2")
mobile_2.text = "Oppo"
mobile_3 = xml.SubElement(mobile, "mobile_3")
mobile_3.text = "Realme"
mobile_4 = xml.SubElement(mobile, "mobile_4")
mobile_4.text = "Google Pixel"
mobile_5 = xml.SubElement(mobile, "mobile_5")
mobile_5.text = "IPhone"
mobile_6 = xml.SubElement(mobile, "mobile_6")
mobile_6.text = "Sony"
tree = xml.ElementTree(root)
# 将内容写入至XML文件中
with open(filename, "wb") as file:
tree.write(file)
# 打印创建成功的信息
print("创建成功!")
# 调用上述定义的函数
create_XML_file("my_xml_file.xml")
output
<Mobile_shop><mobile_names><mobile_1>Vivo</mobile_1><mobile_2>Oppo</mobile_2><mobile_3>Realme</mobile_3><mobile_4>Google Pixel</mobile_4><mobile_5>Iphone</mobile_5><mobile_6>Sony</mobile_6></mobile_names></Mobile_shop>
6.创建JSON文件
创建JSON
文件的模块在Python
当中也叫json
,那么往JSON
文件中写入内容这里需要用到dump()
方法,代码如下
# 导入模块
import json
# 键值对来写入至JSON文件中
data = {
"name": "junxin",
"profession": "Blogging",
"programming_language": "Python",
}
# 创建文件,并且以编辑的模式打开
with open("my_json_file.json", "w") as file:
# 这里调用到dump()方法来写入内容
json.dump(data, file)
# 打印创建成功的信息
print("创建成功!")
而当我们想要来查看JSON
文件当中的内容,这里就需要调用load()
方法,代码如下
# 导入模块
import json
# 打开文件
with open("my_json_file.json", "r") as file:
# 调用load()方法
content = json.load(file)
# 打印内容
print(content)
output
{'name': 'Gowtham', 'profession': 'Blogging', 'programming_lang_known': 'Python'}
7.创建PDF文件
如果是要创建PDF
文件的话,这里就需要用到fpdf
模块,这里用到pip
命令来进行该模块的下载,
pip install fpdf
我们尝试往PDF
文件中写入内容,代码如下
# 导入模块
import fpdf
# 创建实例
pdf = fpdf.FPDF()
# 添加一页内容
pdf.add_page()
# 设置字体的格式
pdf.set_font("arial")
# 设置字体的大小
pdf.set_font_size(18)
# 写入内容
pdf.cell(w=0, txt="Hello World!!", ln=0)
# 保存内容
pdf.output("my_pdf.pdf")
来源:https://mp.weixin.qq.com/s/Tc3e_nPXZt4lcDb6dtG7sA