您可以使用 Openpyxl 将全名拆分为名字和姓氏吗?

2024-05-07

我有一个 Excel 文件,我一直在尝试使用 openpyxl 将列(全名)拆分为两个单独的名字和姓氏列。 例如:我有

from openpyxl import Workbook, load_workbook
wb=load_workboo(path)
ws=wb['Sheet1']

全名:哈利·冲浪

我想改为: 名字: 哈利 姓氏: 冲浪

非常感谢您可以在 openpyxl 中执行此操作,因为我无法找到任何答案。


我就是这样做的。加载电子表格,得到Full name列,迭代该列中的单元格,拆分单元格的值,并将这些值写入同一行但不同列的 2 个新单元格中。

from openpyxl import load_workbook
import os

filename = r"names.xlsx"
filename_new = r"names (split).xlsx"

wb = load_workbook(filename)
ws = wb.active

# Find the column letter of the "Full name" column, assuming row 1 are headers
for cell in ws[1]:
    if cell.value == "Full name":
        fullname_column = cell.column_letter
        break

# Add the first and last name columns to the end
firstname_column = ws.max_column + 1
lastname_column = ws.max_column + 2

# Write the headers
ws.cell(row=1, column=firstname_column).value = "First Name"
ws.cell(row=1, column=lastname_column).value = "Last Name"

# Iterate over the fullname column, excluding the header row, read the cell's
# value, split it, and write the values to 2 new cells
for cell in ws[fullname_column][1:]:
    fullname = cell.value.split(maxsplit=1)
    try:
        ws.cell(row=cell.row, column=firstname_column).value = fullname[0]
        ws.cell(row=cell.row, column=lastname_column).value = fullname[1]
    except IndexError:
        pass

# Remove the "Full name" column
ws.delete_cols(cell.column)

# Save the spreadsheet to disk
wb.save(filename_new)

# Launch the new file
os.startfile(filename_new)

输入电子表格:

输出电子表格:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您可以使用 Openpyxl 将全名拆分为名字和姓氏吗? 的相关文章

随机推荐

  • 如何关闭 Grizzly 日志记录?

    如何关闭 Grizzly 的日志记录 我想关闭以下日志记录 Okt 18 2018 8 42 24 AM org glassfish grizzly http server NetworkListener start INFORMATION
  • PCL 点特征直方图 - 分箱

    分箱过程是点特征直方图估计的一部分 结果是b 3bins 如果仅使用三个角度特征 alpha phi theta 其中 b 是 bins 的数量 为什么b 3并不是b 3 假设我们考虑阿尔法 将特征值范围细分为b个区间 您迭代查询点的所有邻
  • 修改 FOR 循环内的索引变量是否是一种好的做法? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 给定代码 for int i 1 i lt 5 i Do work 改变其值是可以接受的i从循环内 例如 for int i 1 i lt 5
  • TransactionScope 超时过早发生?

    我在用着TransactionScope进行一些批量插入和更新 问题是 即使我设置了超时 我也会在 30 分钟长的操作中遇到超时异常TransactionScope到一小时 此外 在异常之后 它会插入看似随机数量的批次记录 例如 最后一个操
  • 有什么方法可以有效地应用大型 git 补丁吗?

    我们收到了一个大补丁 修改了大约 17000 个文件 其大小为5 2G 应用补丁时git apply 3 12个小时后还没有完成 我们将每个文件的补丁分成更小的补丁 然后一一应用它们 这样至少我们可以看到进度 再次卡在一个文件补丁上 仍然有
  • .bind("move_node.jstree",.. -> data.rslt.obj undefined。如何获取节点数据?

    我有一个 check move 的自定义功能 crrm move check move function m var p this get parent m o if p return false if m cr 1 return fals
  • NPM 无法安装依赖项 - 尝试解锁尚未锁定的内容

    我一直在尝试在我的 package json 文件上运行 npm install 但遇到了很多麻烦 我的所有依赖项上一直显示 错误 尝试解锁尚未锁定的 XXX 这是其中之一 Error Attempt to unlock tbd 0 6 4
  • 为 Docker 容器分配静态 IP

    我现在尝试在启动 Docker 容器时分配静态 IP 172 17 0 1 我使用端口 2122 作为该容器的 ssh 端口 以便让该容器监听端口 2122 sudo docker run i t p 2122 2122 ubuntu 此命
  • Laravel 社交名流 $user->getId()?

    我不确定这是否是真正导致我的问题的原因 但也许有人会知道 当我使用 Laravel Socialite 并执行以下操作时 social user Socialite driver provider gt user 然后我的代码中的其他地方执
  • 将问号 (?) 替换为 (\\?)

    我正在尝试定义一个模式来匹配文本中带有问号 的文本 在正则表达式中 问号被认为是 一次或根本不 那么我可以用 替换文本中的 符号来解决模式问题吗 String text aaa aspx pubid 222 zzz Pattern p Pa
  • 将Excel数据转换为特定的JSON格式

    我收到一个 Excel 文件 xlsx 如下所示 行和列的数量可以变化 例如 它也可以如下所示 对于第一张图片中的 Excel 工作表 JSON 应如下所示 value Prename Nik Age 17 Country Switzerl
  • 防止被 0 除的 Typescript 类型

    我正在使用打字稿创建一个用于培训目的的计算系统 但在除法过程中出现打字错误 您知道如何解决吗 type Variable value number resolve gt number type NoZeroVariable value Om
  • 从其他模块调用的数组扩展

    其他模块 例如 XCTest 项目 无法使用数组扩展方法 为了简单起见 下面的代码什么也不做 但可以用来重现错误 import Foundation extension Array mutating func myMethod toInde
  • 将选择标准添加到 read.table

    让我们采用以下我导入的数据集的简化版本read table a lt as data frame c M M F F F b lt as data frame c 25 22 33 17 18 df lt cbind a b colname
  • 在Python中获取目录基名的优雅方法?

    我有几个脚本将目录名称作为输入 并且我的程序在这些目录中创建文件 有时我想获取给程序的目录的基本名称 并用它在目录中创建各种文件 例如 directory name given by user via command line output
  • 如何在S3中存储数据并允许用户使用rails API / iOS客户端以安全的方式访问?

    我是编写 Rails 和 API 的新手 我需要一些有关 S3 存储解决方案的帮助 这是我的问题 我正在为 iOS 应用程序编写一个 API 用户在 iOS 上使用 Facebook API 登录 服务器根据 Facebook 向 iOS
  • 调用泛型类型的方法?

    为什么下面的代码在 Delphi XE 中会产生错误 unit UTest interface type TTest class public procedure Foo
  • 设置角度组件的完整高度

    我无法让我的列表成为全高 我的代码由于嵌套组件而更加复杂 但我仍然可以使用此代码来复制它 这是一个笨蛋 http plnkr co edit R0QgLz8cjyRHYOLf4uJW http plnkr co edit R0QgLz8cj
  • 在散景中隐藏轴

    如何在散景图中隐藏 x 轴和 y 轴 我已经根据此进行了检查和尝试 p1 figure visible None p1 select type Axis visible 0 xaxis Axis plot p1 visible 0 和喜欢h
  • 您可以使用 Openpyxl 将全名拆分为名字和姓氏吗?

    我有一个 Excel 文件 我一直在尝试使用 openpyxl 将列 全名 拆分为两个单独的名字和姓氏列 例如 我有 from openpyxl import Workbook load workbook wb load workboo p