python 新建excel 并添加数据行
时间: 2023-07-25 21:29:45 浏览: 132
你可以使用 Python 的第三方库 openpyxl 来新建并添加数据行到 Excel 文件中。以下是一个示例代码:
```python
from openpyxl import Workbook
# 创建一个新的工作簿
workbook = Workbook()
# 选取默认的工作表
worksheet = workbook.active
# 添加数据行
worksheet.append(['姓名', '年龄', '性别'])
worksheet.append(['张三', 18, '男'])
worksheet.append(['李四', 20, '女'])
worksheet.append(['王五', 22, '男'])
# 保存工作簿
workbook.save('example.xlsx')
```
运行以上代码后,会在当前目录下生成一个名为 `example.xlsx` 的 Excel 文件,并在其中添加了四行数据。你可以根据需要修改数据内容或添加更多数据行。
相关问题
python新建Excel并添加下拉框,通过公式修改图表
在Python中,我们可以使用`pandas`, `openpyxl`库来创建Excel文件,并结合`matplotlib`库来绘制图表。至于添加下拉框(通常用于数据筛选或交互),Openpyxl库本身并不直接支持下拉框,但可以利用其灵活性自定义单元格内容。
首先,新建Excel工作簿并添加表格:
```python
import pandas as pd
from openpyxl import Workbook
# 创建DataFrame
data = {'列1': ['选项A', '选项B', '选项C'],
'列2': [10, 20, 30]}
df = pd.DataFrame(data)
# 新建Excel
wb = Workbook()
ws = wb.active
df.to_excel(ws, index=False) # 将DataFrame写入工作表
# 添加下拉框需要额外的用户界面工具,比如Tkinter等,这里不做详细展示
```
然后,我们可以创建图表并使用公式动态更新。例如,假设我们有一个图表基于`列2`的数据,你可以先创建一个简单的柱状图:
```python
import matplotlib.pyplot as plt
from openpyxl.chart import BarChart, Reference
# 创建图表区域
chart = BarChart()
chart.add_data(Reference(ws, min_col=1, min_row=2, max_row=len(df)), titles_from_data=True)
chart.title = "基于列2的图表"
# 绘制到工作表
chart_sheet = wb.create_sheet(title="图表")
chart Sheet.add_chart(chart, 'A1')
# 假设你有一个列表或函数能返回新的值,如 `new_values = update_function()`
# 更新图表的基础数据源
ws['列2'] = new_values
chart.data_source = Reference(ws, min_col=1, min_row=2, max_row=len(df))
chart.update_layout()
# 保存Excel
wb.save('your_file.xlsx')
```
请注意,由于Excel本身不支持实时交互式下拉框,这里的“下拉框”只是简单地替换数据,而非真正的动态筛选功能。若要实现Excel级别的交互,可能需要借助第三方库如`xlsxwriter`或者更专业的BI工具。
如何调用Python完成Excel的读取并新建Excel写入内容
要完成Excel的读取和新建写入,需要使用Python中的pandas和openpyxl模块。以下是一个例子:
读取Excel文件:
``` python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('example.xlsx', sheet_name='Sheet1')
print(df)
```
这里我们使用了pandas的read_excel方法来读取example.xlsx文件中的Sheet1工作表,并打印出来。
新建Excel文件并写入内容:
``` python
import pandas as pd
from openpyxl import Workbook
# 新建Excel文件
wb = Workbook()
ws = wb.active
# 写入数据
ws['A1'] = '姓名'
ws['B1'] = '年龄'
ws.append(['张三', 20])
ws.append(['李四', 30])
ws.append(['王五', 25])
# 保存文件
wb.save('new_example.xlsx')
```
这里我们使用了openpyxl模块中的Workbook和Worksheet类来新建Excel文件和工作表,并使用append方法来添加数据。最后使用save方法保存文件。
阅读全文