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

如何在Python中以垂直格式打印列表的所有元素?

实现嵌套列表的垂直格式化打印

问题场景

给定嵌套列表:

A = [[1, 2, 3, 4, 5, 6, 7, 8, 10], [15, 19, 21, 11, 18]]

使用 print(*A) 会得到一行输出:

[1, 2, 3, 4, 5, 6, 7, 8, 10] [15, 19, 21, 11, 18]

需要将其格式化为指定的垂直缩进样式:

[[1, 
  2, 
  3, 
  4, 
  5, 
  6, 
  7, 
  8, 
  10],
  [15, 
   19, 
   21, 
   11, 
   18]]

解决方案

以下是适配该格式的通用实现代码:

A = [[1, 2, 3, 4, 5, 6, 7, 8, 10], [15, 19, 21, 11, 18]]

# 打印外层列表的起始左括号
print("[", end="")
for sub_idx, sublist in enumerate(A):
    # 根据子列表的位置设置基础缩进
    base_indent = "  " * sub_idx
    # 打印子列表的起始部分
    print(f"{base_indent}[{sublist[0]},")
    # 打印子列表的中间元素(带缩进)
    for num in sublist[1:-1]:
        print(f"{base_indent}  {num},")
    # 处理子列表的结尾,区分是否为最后一个子列表
    if sub_idx == len(A) - 1:
        print(f"{base_indent}  {sublist[-1]}]]")
    else:
        print(f"{base_indent}  {sublist[-1]}],")

代码说明

  1. 外层列表起始:先打印[并保持不换行,确保格式连贯
  2. 子列表缩进控制:第一个子列表无额外缩进,后续子列表每增加一个就多2个空格,匹配预期格式的层级
  3. 子列表内部格式化:
    • 第一个元素直接紧跟子列表的[
    • 中间元素在基础缩进上再加2个空格,保持垂直对齐
    • 最后一个元素处理括号闭合逻辑,最后一个子列表需要同时闭合外层的]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 17:30:48