python openpyxl遍历所有单元格
时间: 2024-08-14 07:06:11 浏览: 284
在Python中,你可以使用openpyxl库来操作Excel文件,包括遍历所有的单元格。Openpyxl是一个用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件的库。以下是遍历工作表所有单元格的基本步骤:
```python
from openpyxl import load_workbook
# 加载工作簿
workbook = load_workbook('example.xlsx')
# 选择你要遍历的工作表
sheet = workbook['Sheet1']
# 使用迭代器的方式遍历所有单元格
for row in sheet.iter_rows():
for cell in row:
print(cell.value) # 打印单元格的值
# 或者直接使用二维列表的形式获取
all_cells = sheet.values
for row in all_cells:
for cell in row:
print(cell)
相关问题
python openpyxl 遍历所有单元格
### 使用 OpenPyXL 遍历所有单元格
为了遍历工作表中的所有单元格,可以利用 `openpyxl` 提供的功能来访问每一行和列的数据。下面展示了一种方法,通过迭代整个工作表的所有行列组合实现这一目标。
```python
from openpyxl import load_workbook
def iterate_all_cells(file_path, sheet_name=None):
wb = load_workbook(filename=file_path)
if sheet_name:
ws = wb[sheet_name]
else:
ws = wb.active
for row in ws.iter_rows(values_only=True): # 迭代获取每行数据并只返回单元格的值
for cell_value in row:
print(cell_value)
# 示例调用函数读取名为example.xlsx的工作簿,默认活动表内所有单元格的内容
iterate_all_cells('example.xlsx')
```
上述代码展示了如何加载一个现有的Excel文件,并选择特定的工作表或默认使用当前激活的那个。接着采用 `iter_rows()` 方法逐行扫描表格内的每一个元素[^1]。
对于那些希望获得更详细的控制(比如同时拿到坐标位置),还可以调整循环结构如下:
```python
from openpyxl import load_workbook
def detailed_iterate_all_cells(file_path, sheet_name=None):
wb = load_workbook(filename=file_path)
if sheet_name:
ws = wb[sheet_name]
else:
ws = wb.active
for row_index, row in enumerate(ws.iter_rows(), start=1):
for col_index, cell in enumerate(row, start=1):
print(f'Cell at ({row_index},{col_index}): {cell.value}')
detailed_iterate_all_cells('example.xlsx')
```
这段增强版的例子不仅打印出了每个单元格的具体数值,还提供了它们所在的确切位置——即所在的行号与列号[^2]。
python openpyxl 遍历 excel
可以使用 openpyxl 库读取 Excel 文件,并使用 for 循环遍历每个单元格。示例代码如下:
```
from openpyxl import load_workbook
# 打开 Excel 文件
workbook = load_workbook('example.xlsx')
# 选择第一个工作表
worksheet = workbook.active
# 遍历每个单元格
for row in worksheet.iter_rows():
for cell in row:
print(cell.value)
```
也可以指定某一列或某一行遍历,如:
```
for row in worksheet.iter_rows(min_row=1, max_row=3, min_col=1, max_col=3):
for cell in row:
print(cell.value)
```
阅读全文
相关推荐
















