gpt4 book ai didi

printing - 打印表格的 Pythonic 方式

转载 作者:太空宇宙 更新时间:2023-11-04 06:51:25 25 4
gpt4 key购买 nike

我正在使用这个简单的函数:

def print_players(players):
tot = 1
for p in players:
print '%2d: %15s \t (%d|%d) \t was: %s' % (tot, p['nick'], p['x'], p['y'], p['oldnick'])
tot += 1

我假设昵称不超过 15 个字符。
我想让每个“列”保持对齐,是否有一些语法糖允许我做同样的事情,但保持昵称列左对齐而不是右对齐,而不会破坏右侧的列?

等效的、更丑陋的代码是:

def print_players(players):
tot = 1
for p in players:
print '%2d: %s \t (%d|%d) \t was: %s' % (tot, p['nick']+' '*(15-len(p['nick'])), p['x'], p['y'], p['oldnick'])
tot += 1

感谢大家,这里是最终版本:

def print_players(players):
for tot, p in enumerate(players, start=1):
print '%2d:'%tot, '%(nick)-12s (%(x)d|%(y)d) \t was %(oldnick)s'%p

最佳答案

要左对齐而不是右对齐,请使用 %-15s 而不是 %15s

关于printing - 打印表格的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1605861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com