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

Python循环输出格式优化:动态p下合并同一word的多行输出

解决方案

这个问题很好解决,核心思路是先为每个单词收集所有对应的统计结果,最后一次性输出整行内容,而不是每循环一次就打印一行。这样不管p是动态变化的多少,都能完美适配。

具体代码实现

import re

# 假设words、input_和p已经提前定义好
for word in words:
    # 初始化结果列表,先放入当前处理的单词
    output_parts = [word]
    for i in range(1, p + 1):
        # 计算当前i对应的匹配次数
        match_count = len(re.findall(word, input_[i]))
        # 将次数和i转为字符串,添加到结果列表
        output_parts.append(str(match_count))
        output_parts.append(str(i))
    # 用空格拼接所有部分,一次性打印整行
    print(' '.join(output_parts))

代码说明

  • 我们先创建一个列表output_parts,第一个元素是当前处理的单词word;
  • 内层循环遍历每个i时,不再直接打印,而是把匹配次数match_count和i转成字符串后添加到列表里;
  • 当内层循环结束(也就是处理完所有i),用' '.join(output_parts)把列表里的所有元素用空格连接成一个字符串,再一次性打印出来,就得到了你期望的格式。

比如你给出的示例场景,这个代码会输出:businesses 0 1 0 2 2 3,完全符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:26:16