You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现Excel两列字符串合并:遍历列表方案咨询

解决方案:用for循环合并Excel两列字符串

当然可以用for循环实现这个需求!你的初始代码已经搞定了文件读取的第一步,接下来只需要简单几步就能完成列合并,我给你详细拆解并给出完整实现:

完整代码实现

import xlrd

file_location = "C:/Users/Desktop/manual.xlsx"
workbook = xlrd.open_workbook(file_location)

# 获取第一个工作表(如果你的表有明确名称,也可以用sheet_by_name("表名"))
sheet = workbook.sheet_by_index(0)

# 初始化列表存储合并后的结果
merged_column = []

# 遍历每一行,合并两列字符串
for row_idx in range(sheet.nrows):
    # 获取第row_idx行的第0列和第1列数据,转成字符串避免类型问题
    col1_content = str(sheet.cell_value(row_idx, 0))
    col2_content = str(sheet.cell_value(row_idx, 1))
    
    # 合并字符串,可根据需求加分隔符,比如col1_content + " | " + col2_content
    merged_str = col1_content + col2_content
    
    # 将合并后的字符串加入结果列表
    merged_column.append(merged_str)

# 打印结果验证(可选)
for idx, content in enumerate(merged_column):
    print(f"第{idx+1}行合并结果:{content}")

关键细节说明

  • 工作表获取:sheet_by_index(0)表示取Excel里的第一个工作表,如果目标工作表有明确名称,改用sheet_by_name("你的表名")会更稳妥。
  • 数据类型转换:用str()包裹单元格值是为了避免遇到数字、日期等非字符串类型时合并出错。
  • 表头处理:如果Excel第一行是表头不需要合并,把循环改成range(1, sheet.nrows)即可,从第二行开始处理。
  • 自定义分隔符:如果需要在两列内容间加分隔符(比如空格、逗号、竖线),直接修改合并逻辑就行,比如merged_str = f"{col1_content}, {col2_content}"。

如果之后需要把合并后的列写回Excel,也可以搭配xlwt(针对xls格式)或者openpyxl(支持xlsx格式)来实现,核心的合并逻辑就是上面的for循环啦。

内容的提问来源于stack exchange,提问作者fg42

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:44:29