python 写入多行多列数据到excel
时间: 2023-08-12 12:27:49 浏览: 440
可以使用 openpyxl 库来写入多行多列数据到 Excel。下面是一个示例代码:
```python
import openpyxl
# 创建一个工作簿
workbook = openpyxl.Workbook()
# 获取默认的工作表
sheet = workbook.active
# 定义数据
data = [
["姓名", "年龄", "性别"],
["张三", 18, "男"],
["李四", 20, "女"],
["王五", 25, "男"],
]
# 写入数据
for row in data:
sheet.append(row)
# 保存工作簿
workbook.save("data.xlsx")
```
在这个示例中,我们首先创建了一个工作簿,然后获取了默认的工作表。接着,定义了一个包含多行多列数据的二维列表 data,最后使用 for 循环将数据逐行写入工作表中。最后,使用 save 方法将工作簿保存到指定的文件中。
相关问题
怎么用python建立一个带有多行多列的excel表格,举例说明
你可以使用Python中的开源库pandas来建立一个带有多行多列的Excel表格。下面是一个简单的例子:
```python
import pandas as pd
# 创建一个DataFrame对象
data = {'姓名': ['张三', '李四', '王五'],
'年龄': [20, 22, 24],
'性别': ['男', '男', '女']}
df = pd.DataFrame(data)
# 将DataFrame写入Excel文件
writer = pd.ExcelWriter('example.xlsx')
df.to_excel(writer, sheet_name='Sheet1', index=False)
writer.save()
# 读取Excel文件
df = pd.read_excel('example.xlsx', sheet_name='Sheet1')
print(df)
```
这个例子中,我们首先创建了一个DataFrame对象,包含了姓名、年龄和性别三列数据,每列数据有三行。然后,我们使用pandas的to_excel方法将DataFrame对象写入一个Excel文件中。最后,我们使用read_excel方法读取Excel文件,并输出读取到的DataFrame对象。你可以修改数据内容和文件路径,建立自己的Excel文件。
python处理Excel文件,将第四列“购买物品”中用“/”分隔的多个物品分成多行,使得每一行只有一个物品,前面的学号,姓名,手机保持原装
在Python中,我们可以使用pandas库方便地处理Excel文件。假设你有一个名为`data.xlsx`的Excel文件,其中包含三列数据(学号、姓名、手机号和购买物品),你可以按照以下步骤操作:
首先,安装必要的库(如果你还没有安装):
```bash
pip install pandas openpyxl
```
然后,编写一个脚本来读取并处理文件内容:
```python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('data.xlsx')
# 假设"购买物品"这一列名是'PurchaseItems'
purchase_items_column = 'PurchaseItems'
# 使用split()函数将每个物品分开,并创建一个新的DataFrame,每行只有一个物品
processed_data = df.apply(lambda row: pd.DataFrame(row[purchase_items_column].split('/'), index=[row.name]).stack(), axis=1)
# 结果是一个长表,我们将它转换回宽表形式,每一行对应一个学生和一个单独的购买物品
processed_data = processed_data.reset_index().dropna(subset=['level_1'])[['学号', '姓名', '手机', 'level_1']].rename(columns={'level_1': '购买物品'})
# 写入新的Excel文件
new_df = pd.concat([df[['学号', '姓名', '手机']], processed_data], axis=1)
new_df.to_excel('processed_data.xlsx', index=False)
```
运行此脚本后,你会得到一个新的Excel文件`processed_data.xlsx`,其中第四列的内容已经被拆分为单独的行,每一行只有一项购买物品。
阅读全文