Python将列表数据写入文件(txt, csv,excel)

  • Post category:Python

接下来我将教你如何使用Python将列表数据写入文件,并且以txt、csv和excel格式保存。

写入txt格式文件

1. 程序实现

可以使用Python自带的 open() 函数创建一个txt文件,并使用 write() 函数将列表数据写入到txt文件中。以下是一个完整的示例代码:

# 定义要写入txt的列表数据
data = ['apple', 'orange', 'banana', 'peach', 'grape']

# 打开文件,以写入模式写入txt文件
with open('data.txt', 'w') as file:
    # 将列表数据逐行写入文件
    for item in data:
        file.write(item + '\n')

2. 示例说明

本示例中,我们定义了一个要写入txt文件的列表数据 data,包含5个元素。在第5行中使用 open() 函数创建了一个名为 data.txt 的文件,并指定了打开文件的模式为 “w”,表示以写入模式打开文件。之后,在第7~9行中使用 for 循环逐行写入列表数据到文件中。需要注意的是,在第8行中,我们要添加一个换行符 \n,才能使每个元素独占一行。

写入csv格式文件

1. 程序实现

写入csv格式的文件需要使用Python内置的 csv 模块。以下是一个完整的示例代码:

import csv

# 定义要写入csv的列表数据
data = [
    ['apple', 3],
    ['orange', 5],
    ['banana', 2],
    ['peach', 4],
    ['grape', 1],
]

# 打开文件,以写入模式写入csv文件
with open('data.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    # 写入csv文件的表头,即列名
    writer.writerow(['Fruit', 'Quantity'])
    # 将列表数据逐行写入csv文件
    for item in data:
        writer.writerow(item)

2. 示例说明

本示例中,我们使用Python内置的 csv 模块来写入csv格式的文件。首先,导入 csv 模块。在第5~9行中,我们定义了一个要写入的数据列表 data,包含了水果名称和数量。在第12行中使用 open() 函数创建了一个命名为 data.csv 的csv文件,并指定了打开文件的模式为 “w”,表示以写入模式打开文件。请注意,我们需要将 newline 参数设置为空字符串 ”,以确保在写入文件时不会插入多余的空行。之后,在第13行中创建了一个名为 writer 的csv写入器,并在第16行中写入了csv文件的列名。最后,在第18~21行中使用 for 循环逐行写入列表数据到csv文件中,并每次使用 writer.writerow() 函数将行数据写入到csv文件中。

写入excel格式文件

1. 程序实现

要写入excel格式的文件,我们需要使用Python内置的 xlwt 或第三方库 openpyxl。在这里,我们介绍使用 xlwt 库的写入excel文件的方法。以下是一个完整的示例代码:

import xlwt

# 定义要写入excel的列表数据
data = [
    ['apple', 3],
    ['orange', 5],
    ['banana', 2],
    ['peach', 4],
    ['grape', 1],
]

# 创建一个Workbook对象,用于在其中添加工作表和数据
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('Sheet1')

# 写入excel文件的列名
worksheet.write(0, 0, 'Fruit')
worksheet.write(0, 1, 'Quantity')

# 将列表数据逐行写入excel文件
for row_idx, row_data in enumerate(data):
    for col_idx, col_data in enumerate(row_data):
        worksheet.write(row_idx+1, col_idx, col_data)

# 保存excel文件
workbook.save('data.xls')

2. 示例说明

本示例中,我们使用 xlwt 库来写入excel格式的文件。在第5~9行中,我们定义了一个要写入的数据列表 data。在第12~14行中,我们创建了一个名为 workbook 的Workbook对象,并添加了一个名为 “Sheet1” 的工作表对象 worksheet 用于在其中写入数据。

在第17~18行,我们向excel文件写入列名。首先使用 worksheet.write() 函数将列名 “Fruit” 写入第1行第1列,然后再将列名 “Quantity” 写入第1行第2列。

将数据一行一行逐个写入excel文件。在第21~24行中,我们使用 enumerate() 函数逐行遍历列表数据,并使用 worksheet.write() 函数将当前数据写入到Workbook对象的对应工作表中。

最后,在第27行使用 workbook.save() 函数将Workbook对象保存到名为 data.xls 的excel文件中。

以上是将列表数据写入文件(txt、csv、excel)的完整实例教程,希望对您有所帮助。