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

Python中如何将多行字符串组成的自定义对象列表横向并排打印

你现在的问题核心是每个算术题都是独立的多行字符串,直接打印会按整个题块从上到下输出,要实现横向排版需要把所有题的对应行分别拼接后再打印。


实现步骤

  1. 先把每个算术题的多行字符串按换行符拆分,过滤掉多余的空行,得到每个题的4行有效内容列表
  2. 按行号遍历(共4行),每次取出所有算术题的当前行,添加统一间距后拼接为一整行
  3. 逐行打印拼接后的内容

可运行的修改后代码

a = '''   32
+ 698
-----
  730'''
b = '''   38
- 299
-----
 -261
'''
c = '''  45
+ 43
----
  88
'''
arranged_problems = [a, b, c]

# 拆分所有题目为单独行,过滤空行
problem_all_lines = []
for problem in arranged_problems:
    single_problem_lines = [line for line in problem.split('\n') if line.strip() != '']
    problem_all_lines.append(single_problem_lines)

# 逐行拼接打印
gap = '    '  # 两个算术题之间的间距,可自行调整
for line_index in range(4):
    # 取出所有题的当前行,用间距拼接
    print(gap.join([p[line_index] for p in problem_all_lines]))

进阶优化(对齐更规整)

如果希望所有算术题不管自身宽度多少,都占用统一的宽度,排版更整齐,可以用ljust方法补空格:

fixed_width = 8  # 每个算术题占用的固定宽度
for line_index in range(4):
    print(''.join([p[line_index].ljust(fixed_width) for p in problem_all_lines]))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 12:54:04