如何使用Python将给定的列表拆分并插入Excel文件?
在本篇文章中,我们将展示如何使用Python拆分列表并将其插入到Excel文件中。
假设我们拿到一个静态列表,将其拆分并将这些列表项插入到Excel文件中,返回一个Excel文件名为 outputExcelFile.xlsx ,其包含以下输出。
outputExcelFile.xlsx
球员姓名 | 国家 |
---|---|
Virat Kohli | 印度 |
Bhuvaneshwar Kumar | 印度 |
Mahendra Singh Dhoni | 印度 |
Rashid Khan | 阿富汗 |
Hardik Pandya | 印度 |
David Warner | 澳大利亚西印度群岛 |
Kieron Pollard | 印度 |
Rohit Sharma | 新西兰 |
Kane Williamson | 南非 |
方法1:不显示索引值
算法(步骤)
以下是执行所需任务所需遵循的算法/步骤−
-
使用import关键字导入Pandas模块(Pandas是Python开源数据处理和分析包。它具有广泛的数据结构和操作,可用于操作Excel,JSON和CSV格式的小型和大型数据集。)
-
创建变量以存储静态/动态列表。
-
使用Pandas Dataframe()函数创建一个数据框并创建一个变量存储它。
-
使用切片将输入列表拆分为两个Pandas列,一个用于“ 球员姓名 ”,另一个用于“ 国家 ”。
例子
newDataframe['Player Name'] = inputList[0:9]
newDataframe['Country'] = inputList[10:19]
- 使用to_excel()函数将以上数据框转换为Excel文件(.xlsx),将索引设置为假(如果将索引设置为假,则不会显示索引值)。
例子
以下程序将拆分列表项并将其插入Excel文件中,返回一个Excel文件而不显示索引值−
# 导入pandas模块
import pandas as pd
# 输入列表
inputList = ['Virat Kohli', 'Bhuvaneshwar Kumar', 'Mahendra Singh Dhoni', 'Rashid Khan', 'Hardik Pandya',
'David Warner', 'Kieron Pollard', 'Rohit Sharma', 'Kane Williamson', 'Kagiso Rabada',
'India', 'India', 'India', 'Afghanistan', 'India', 'Australia'
'West Indies', 'India', 'New Zealand', 'South Africa']
# 创建一个新的数据帧
newDataframe = pd.DataFrame()
# 使用切片将列表拆分为两个Pandas列,一个用于“球员姓名”,
# 第二个用于国家。
newDataframe['球员姓名'] = inputList[0:9]
newDataframe['国家'] = inputList[10:19]
# 将数据框转换为Excel文件
newDataframe.to_excel('outputExcelFile.xlsx', index = False)
# 从outputExcelFile读取数据
excelData=pd.read_excel('outputExcelFile.xlsx')
# 打印数据帧
print(excelData)
输出
在执行上述程序后,将生成以下输出−
球员姓名 国家
0 Virat Kohli India
1 Bhuvneshwar Kumar India
2 Mahendra Singh Dhoni India
3 Rashid Khan Afghanistan
4 Hardik Pandya India
5 David Warner Australia West Indies
6 Kieron Pollard India
7 Rohit Sharma New Zealand
8 Kane Williamson South Africa
我们将一组单词作为输入,然后创建一个数据帧来存储这些值作为行和列,然后在数据帧中创建一个列,并利用列表的切片将这些值存储在该列中。我们使用to_excel()函数将该数据框转换为Excel文件,并使用pandas从同一输出Excel文件读取值并显示它们。
注意−如果您想显示索引值
使用to_excel()函数通过设置index为True将上述数据帧转换为Excel文件(.xlsx)(如果将索引设置为True,我们将获得索引值)如下所示−
newDataframe.to_excel('outputExcelFile.xlsx', index = True)
您将获得以下输出
Unnamed: 0 Player Name Country
0 0 Virat Kohli India
1 1 Bhuvneshwar Kumar India
2 2 Mahendra Singh Dhoni India
3 3 Rashid Khan Afghanistan
4 4 Hardik Pandya India
5 5 David Warner Australia West Indies
6 6 Kieron Pollard India
7 7 Rohit Sharma New Zealand
8 8 Kane Williamson South Africa
因为我们指定了index为true,它将生成一个新的列来存储索引。
结论
我们学习了如何创建数据框,并将列表内容分割到数据框的列中,以及如何将数据框转换为Excel,然后如何将输出的Excel文件转换回数据框以确认结果。我们学习了如何在Excel电子表格中添加/删除索引。