python单个数据写入excel表,使用openpyxl库
时间: 2023-06-06 14:07:02 浏览: 105
可以使用openpyxl库中的Workbook和Worksheet模块来完成该操作。首先需要创建一个工作簿,然后再在该工作簿中创建一个工作表。接着,使用工作表的cell方法来定位需要写入数据的单元格,并将相应的数据写入该单元格即可。具体实现可以参考openpyxl库的官方文档。
相关问题
python写入excel指定列
要写入 Excel 文件中的指定列,可以使用 Python 的 openpyxl 库。以下是一个简单的示例代码:
```python
import openpyxl
# 打开 Excel 文件
workbook = openpyxl.load_workbook('example.xlsx')
# 选择要写入的工作表
worksheet = workbook['Sheet1']
# 写入数据到指定列
for row in worksheet.iter_rows(min_row=2, max_row=5, min_col=2, max_col=2):
for cell in row:
cell.value = 'Data'
# 保存文件
workbook.save('example.xlsx')
```
在上面的示例代码中,我们打开名为 "example.xlsx" 的 Excel 文件,并选择名为 "Sheet1" 的工作表。然后,我们使用双重循环将值 "Data" 写入第二列的行2到行5。最后,我们保存文件。
请注意,上述代码仅适用于写入单个列。如果您需要写入多个列,请修改 `min_col` 和 `max_col` 参数的值。
pandas修改单个值并写入excel
要修改Pandas DataFrame中的单个值并将更改写入Excel文件,可以按照以下步骤操作:
1. 导入必要的库和文件:首先,导入Pandas和openpyxl库,并使用read_excel方法读取要更改的Excel文件并将其存储在DataFrame中。
``` python
import pandas as pd
from openpyxl import load_workbook
df = pd.read_excel('filename.xlsx')
```
2. 修改值:使用DataFrame的at方法更改要更改的值。at方法需要两个参数,第一个参数是要更改的行索引,第二个参数是要更改的列索引。例如,要将第一行第一列的值更改为10,可以使用以下代码:
``` python
df.at[0, 'Column1'] = 10
```
3. 将更改写入Excel文件:将更改写入Excel文件需要使用openpyxl库。首先,使用load_workbook方法加载Excel文件。然后,使用pandas的to_excel方法将DataFrame写入Excel文件。在写入文件之前,可以使用openpyxl库中的worksheet属性获取要更改的工作表。在获取工作表之后,可以使用openpyxl的cell方法将DataFrame中更改的值写入工作表中。最后,使用save方法将更改保存到Excel文件中。
``` python
# Load Excel file
book = load_workbook('filename.xlsx')
writer = pd.ExcelWriter('filename.xlsx', engine='openpyxl')
writer.book = book
# Write DataFrame to Excel
df.to_excel(writer, index=False)
# Get worksheet
ws = book['Sheet1']
# Write updated value to cell
ws.cell(row=1, column=1, value=df.at[0, 'Column1'])
# Save workbook
writer.save()
```
完整代码:
``` python
import pandas as pd
from openpyxl import load_workbook
# Load Excel file
df = pd.read_excel('filename.xlsx')
# Modify value
df.at[0, 'Column1'] = 10
# Write DataFrame to Excel
book = load_workbook('filename.xlsx')
writer = pd.ExcelWriter('filename.xlsx', engine='openpyxl')
writer.book = book
df.to_excel(writer, index=False)
# Get worksheet
ws = book['Sheet1']
# Write updated value to cell
ws.cell(row=1, column=1, value=df.at[0, 'Column1'])
# Save workbook
writer.save()
```
这将更改Excel文件中第一行第一列的值为10,并将更改保存到Excel文件中。