You need to enable JavaScript to run this app. Python从带性别标签的姓名列表提取末2位字符并保留对应标签
优惠活动
大模型
产品
解决方案
定价
更多

Python从带性别标签的姓名列表提取末2位字符并保留对应标签

问题根因
  • 原实现的遍历逻辑存在定位偏差:原列表的每一条记录本身是[姓名字符串, 性别标签]的二元结构,代码直接对这个二元列表执行i[-2:]切片,根本没有触达内部的姓名字段,自然无法得到提取姓名末尾两个字母的结果。
可行修正方案
  • 遍历过程中先把每条二元记录拆分为独立的姓名、性别两个变量,再对姓名字段做末尾两位字符的切片操作,最后重新组合成和输入结构一致的输出即可。
    对应的可运行代码:
def last(letters):
    return [[name[-2:], gender] for name, gender in letters]
  • 方案完全匹配你期望的输出格式:以样本数据为例,suzetta会提取末尾两位ta搭配原有性别f,nikita提取末尾ta搭配m,最终输出结构和你给出的示例[['ta', 'f'], ['ta', 'f'], ['ja', 'f'], ['ta', 'm'], ['na', 'f']]完全一致。
  • 无需额外做边界兼容处理:样本中存在长度较短的姓名(比如3个字符的mag),Python的字符串切片规则会自动返回最后两位字符,不会出现索引越界的报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.25 00:36:07