编写带有调整文本的脚本

问题描述 投票:0回答:1
l = list(range(1, 101))
chunks = [l[i:i+10] for i in range(0, len(l), 10)]
print(*chunks, sep='\r\n') 

如何将此列表作为10列中的右对齐文本打印?我试过'\r' right-adjust(>)rjust,但都给了我一个错误。

python list text
1个回答
0
投票

根据您的要求:"print this list as right aligned text in 10 columns"

根据我的理解,你可能想要这样的东西:

  1   2   3   4   5   6   7   8   9  10
 11  12  13  14  15  16  17  18  19  20
 21  22  23  24  25  26  27  28  29  30
 31  32  33  34  35  36  37  38  39  40
 41  42  43  44  45  46  47  48  49  50
 51  52  53  54  55  56  57  58  59  60
 61  62  63  64  65  66  67  68  69  70
 71  72  73  74  75  76  77  78  79  80
 81  82  83  84  85  86  87  88  89  90
 91  92  93  94  95  96  97  98  99 100

如果是这样,你可以通过rjust实现它,你必须首先将int转换为str

width = 3
sep = ' '
chunks = [sep.join(map(lambda x: str(x).rjust(width), l[i:i + 10])) for i in range(0, len(l), 10)]

我已经定义了widthsep,以防你想要调整。

希望对您有所帮助,并在您有其他问题时发表评论。 :)

© www.soinside.com 2019 - 2024. All rights reserved.