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

如何用Python拼接函数替代替换函数?Pandas处理Excel列数据

问题1:如何在Python中使用拼接替代替换函数?

替换函数(如str.replace())是直接替换字符串中的指定子串,而拼接可以通过拆分字符串获取需要保留的部分,再将保留部分与新内容拼接实现类似效果,适合你明确知道保留区域和替换位置的场景。以下是贴合你需求的示例:

  • 场景:把字符串末尾的XX替换为S2(比如你的数据里的Ai80010_6.cardop.XX)
    用replace的写法:
    s = "Ai80010_6.cardop.XX"
    new_s = s.replace("XX", "S2")
    
    用拼接的写法(拆分取前缀+拼接新后缀):
    s = "Ai80010_6.cardop.XX"
    # 从右往左按`.`拆分1次,提取前缀部分
    prefix = s.rsplit('.', 1)[0]
    new_s = f"{prefix}.S2"
    

核心逻辑:先通过str.split()或str.rsplit()拆分字符串,提取要保留的片段,再用f-string或+运算符将保留片段与新内容拼接,以此替代替换函数的作用。

问题2:用Pandas在Jupyter Notebook中处理Excel生成目标输出

需求规律梳理

  • 若Ai80010_6字段的最后一段是XX,则替换为S+Stages列的数字;若最后一段是Sx则直接保留
  • 保留Ai80010_6的前缀部分(最后一段之前的内容),再与新后缀拼接得到output列

实现代码步骤

  1. 导入Pandas并读取Excel文件
import pandas as pd

# 替换为你的Excel文件路径
df = pd.read_excel("your_file.xlsx")
  1. 拆分Ai80010_6为前缀和后缀
    从右往左按.拆分1次,分离出前缀(最后一段之前的内容)和后缀(最后一段):
df[['prefix', 'suffix']] = df['Ai80010_6'].str.rsplit('.', n=1, expand=True)
  1. 生成新的后缀
    根据suffix是否为XX,结合Stages列的值生成目标后缀:
df['new_suffix'] = df.apply(
    lambda row: f"S{row['Stages']}" if row['suffix'] == 'XX' else row['suffix'],
    axis=1
)
  1. 拼接得到output列
df['output'] = df['prefix'] + '.' + df['new_suffix']
  1. 整理并展示结果
# 保留需要的列并调整顺序
result_df = df[['Stages', 'Ai80010_6', 'output']]
# 在Jupyter Notebook中用display展示更美观的表格
display(result_df)

完整代码

import pandas as pd

df = pd.read_excel("your_file.xlsx")
df[['prefix', 'suffix']] = df['Ai80010_6'].str.rsplit('.', n=1, expand=True)
df['new_suffix'] = df.apply(
    lambda row: f"S{row['Stages']}" if row['suffix'] == 'XX' else row['suffix'],
    axis=1
)
df['output'] = df['prefix'] + '.' + df['new_suffix']
result_df = df[['Stages', 'Ai80010_6', 'output']]
display(result_df)

运行后即可得到你期望的输出表格。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 10:13:17