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

Python矩阵格式化显示问题:实现对齐缩进的矩阵输出

Python矩阵格式化对齐输出方案

要实现矩阵元素对齐(每行末尾自然对齐,同列数字位置对齐),核心思路是先确定每一列的最大字符宽度,再按该宽度格式化每个元素,具体步骤如下:

  1. 计算每列的最大宽度:转置矩阵,遍历每一列的所有数字,将数字转为字符串后取最长长度,作为该列的格式化宽度。
  2. 格式化每行元素:对每行的每个元素,按照对应列的宽度进行对齐格式化,再拼接成带方括号的行字符串。

示例代码

# 定义示例矩阵
matrix = [
    [1, 304, 67],
    [387, 378, 2],
    [6783, 2, 2222]
]

# 转置矩阵,按列处理
transposed_matrix = list(zip(*matrix))
# 计算每列的最大字符宽度
column_widths = [max(len(str(num)) for num in column) for column in transposed_matrix]

# 格式化输出每一行
for row in matrix:
    # 对每个元素按对应列的宽度右对齐格式化
    formatted_items = [f"{num:>{width}}" for width, num in zip(column_widths, row)]
    # 拼接成带方括号的行
    formatted_row = "[" + ", ".join(formatted_items) + "]"
    print(formatted_row)

输出效果

[   1, 304,   67]
[ 387, 378,    2]
[6783,   2, 2222]

如果需要左对齐,只需将格式化字符串中的>改为<即可,输出会变成:

[1,    304, 67  ]
[387,  378, 2   ]
[6783, 2,   2222]

这种方法能自动适配任意数字位数的矩阵,保证每列元素对齐,每行末尾自然对齐,比手动计算空格更可靠。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 20:51:10