python如何将csv文件中的内容自动调整列宽
时间: 2024-02-06 09:02:54 浏览: 187
在Python中可以使用`csv`模块来读取和处理CSV文件,同时也可以使用`openpyxl`库中的`worksheet`对象来调整列宽。
下面是一个示例代码:
```python
import csv
from openpyxl import Workbook
from openpyxl.utils import get_column_letter
# 读取CSV文件
with open('data.csv', newline='') as f:
reader = csv.reader(f)
data = [row for row in reader]
# 创建Excel文件
wb = Workbook()
ws = wb.active
# 写入数据
for row in data:
ws.append(row)
# 自动调整列宽
for i, col in enumerate(ws.columns):
column_letter = get_column_letter(i+1)
column_width = max(len(str(cell.value)) for cell in col)
ws.column_dimensions[column_letter].width = column_width
# 保存Excel文件
wb.save('data.xlsx')
```
其中,`csv.reader`函数可以读取CSV文件中的数据,`Workbook`类可以创建Excel文件,`append`方法可以将数据写入到工作表中,`column_dimensions`属性可以获取列宽信息,`width`属性可以设置列宽。这段代码会读取名为`data.csv`的CSV文件,将数据导出为名为`data.xlsx`的Excel文件,并自动调整列宽。
阅读全文