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

Jupyter Notebook中单行打印Pandas行内容的实现需求

没问题,我来帮你调整代码得到想要的单行输出格式!

首先,原代码里直接打印df.loc[0]和df.loc[1]会输出完整的Series对象信息,咱们需要提取每行的数值并自定义格式。这里有几种简单的实现方式:

方式1:针对指定行手动拼接

import pandas as pd

d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)

# 把每行的数值转成空格分隔的字符串
row0 = ' '.join(map(str, df.loc[0].values))
row1 = ' '.join(map(str, df.loc[1].values))

# 用逗号+空格拼接并打印,确保在同一行
print(f"{row0}, {row1}")

执行这段代码就会输出你想要的:1 3, 2 4

方式2:通用循环处理(适配多行配对场景)

如果是要循环处理两个DataFrame的多行配对(比如df1和df2的第i行配对),可以用循环来批量处理:

import pandas as pd

# 示例两个结构相同的DataFrame
df1 = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]})
df2 = pd.DataFrame({'col1': [5, 6], 'col2': [7, 8]})

# 循环收集每一对行的内容,最后统一打印在同一行
result = []
for i in range(len(df1)):
    # 处理df1的第i行
    row1_str = ' '.join(map(str, df1.loc[i].values))
    # 处理df2的第i行
    row2_str = ' '.join(map(str, df2.loc[i].values))
    result.append(f"{row1_str}, {row2_str}")

# 把所有结果用空格分隔,打印在同一行
print(' '.join(result))

这段代码会输出:1 3, 5 7 2 4, 6 8(如果想每个配对单独占一行,直接在循环里执行print即可)

方式3:简洁的列表推导式

如果只需要处理单个DataFrame的所有行并输出指定格式,用列表推导式更高效:

import pandas as pd

d = {'col1': [1, 2], 'col2': [3, 4]}
df = pd.DataFrame(data=d)

# 一次性把所有行转成目标格式,再拼接打印
print(', '.join([' '.join(map(str, row)) for row in df.values]))

执行后同样会输出:1 3, 2 4

核心思路就是先提取每行的原始数值,再通过字符串拼接把它们转换成你需要的格式,最后确保在同一行输出即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:34:49