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

如何在姓名首字母间添加英文句号?Python函数实现求助

姓名首字母格式化函数修改

需求说明

  • 实现initials函数,通过*args接收多个姓名片段参数
  • 返回格式要求:每个姓名首字母大写,并用英文句号.分隔,结尾需添加句号(如输入James, Marshall, Hendrix返回J.M.H.)

现有问题代码

def initials(*args):
    result = "" 
    for word in args:
        result += word[0].upper()
    return result

if __name__ == "__main__":
  print(initials("James", "Marshall", "Hendrix")) # 应输出"J.M.H."
  print(initials("John", "Ronald", "Reuel", "Tolkien")) # 应输出"J.R.R.T."

这段代码仅将首字母拼接成无分隔的字符串,无法满足句号分隔的格式要求。

修改后的代码

def initials(*args):
    # 提取每个姓名片段的首字母并大写,用句号连接后追加结尾句号
    initials_list = [word[0].upper() for word in args]
    return ".".join(initials_list) + "."

if __name__ == "__main__":
  print(initials("James", "Marshall", "Hendrix")) # 输出"J.M.H."
  print(initials("John", "Ronald", "Reuel", "Tolkien")) # 输出"J.R.R.T."

修改说明

  • 用列表推导式快速提取所有姓名首字母并转为大写,生成首字母列表
  • 借助str.join()方法,将列表中的首字母用.连接成连续字符串
  • 最后在字符串结尾添加一个.,完全匹配示例要求的格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 06:05:48