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

为什么Python for循环会将pandas数据列表重复打印n次?

问题原因

你出现重复输出的核心问题出在for循环内的打印逻辑:

  • 你遍历的是combined_csv["Zählerstand Beginn"]这个长度为157的序列,循环会执行157次
  • 但每次打印时你拼接的是完整的combined_csv['Tag']列,而不是当前循环项对应的单条Tag值。pandas中字符串和整列Series拼接时,会自动将列内的157条数据分别和前面的字符串拼接,单次循环就会输出157条结果,最终总输出就是157×157条。

修正方案

方案1:按行遍历DataFrame(逻辑直观,适合小数据量)

把原循环替换为以下代码,每次取当前行的对应字段值打印:

for _, row in combined_csv.iterrows():
    print(f"Zählerstand Beginn(kWh/Tag): {row['Zählerstand Beginn']} {row['Tag']}")

如果要打印结束值,同理调整字段名即可。

方案2:用pandas向量化操作(效率更高,无需写循环)

直接通过列拼接生成所有输出内容,一次性打印:

# 打印起始值
output_begin = "Zählerstand Beginn(kWh/Tag): " + combined_csv["Zählerstand Beginn"].astype(str) + " " + combined_csv["Tag"]
print(output_begin.str.cat(sep='\n'))

# 打印结束值
output_end = "Zählerstand Ende(kWh/Tag): " + combined_csv["Zählerstand Ende"].astype(str) + " " + combined_csv["Tag"]
print(output_end.str.cat(sep='\n'))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 07:06:16