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

Python如何高效拼接字符串列表生成首字母大写的条目

解决方案

核心实现逻辑是:以「去除首尾空格后首字母大写」作为新条目的分割标识,连续的非分割标识片段直接拼接到当前条目末尾,仅需一次遍历即可完成,时间复杂度为最优的O(n)。

可直接运行的实现代码

places = [' Ye', 'oks', 'am', '-', 'd', 'ong', ' Gang', 'nam', '-', 'gu Seoul', ' Korea']
result = []
current = []

for s in places:
    # 去除当前片段首尾空白
    cleaned = s.strip()
    # 遇到新的大写开头片段,就把之前拼接的条目存入结果
    if cleaned[0].isupper() and current:
        result.append(''.join(current))
        current = []
    current.append(cleaned)
# 存入最后一个拼接完成的条目
if current:
    result.append(''.join(current))

# 若需要得到第二种拆分空格的输出结果,放开下面这行注释即可
# result = [part for item in result for part in item.split()]

print(result)

输出结果说明

  • 不启用空格拆分逻辑时,输出为你给出的第一类预期结果:['Yeoksam-dong', 'Gangnam-gu Seoul', 'Korea']
  • 启用空格拆分逻辑后,输出为你给出的第二类符合要求的结果:['Yeoksam-dong', 'Gangnam-gu', 'Seoul', 'Korea']

方案优势

  • 仅单次遍历原列表,无重复切割、查找等冗余操作,执行效率最高
  • 规避了你现有代码中索引越界、变量未定义的问题,逻辑更简洁鲁棒

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 13:18:01