python3.6如何连续打印_如何在python3.6中整齐地打印一长串数字?

正如Saelyth所指出的,使用textwrap来格式化这个,但在此之前,您需要格式化每个数字,并将其右对齐并占用2个空格:import textwrap

text = [str(i) for i in range(1, 100)]

one_line = ', '.join('{:>2}'.format(e) for e in text)

# one_line == ' 1, 2, 3, ...'

print('\n'.join(textwrap.wrap(one_line, width=80)))

输出:

^{pr2}$

更新

如果要两个空格的缩进,第一种方法是用缩进打印每一行:import textwrap

text = [str(i) for i in range(1, 100)]

one_line = ', '.join('{:>2}'.format(e) for e in text)

# one_line == ' 1, 2, 3, ...'

for line in textwrap.wrap(one_line, width=78):

print(' {}'.format(line))

第二种方法是使用textwrap.indent:import textwrap

text = [str(i) for i in range(1, 100)]

one_line = ', '.join('{:>2}'.format(e) for e in text)

# one_line == ' 1, 2, 3, ...'

block = '\n'.join(textwrap.wrap(one_line, width=78))

print(textwrap.indent(block, ' '))

注意,由于有两个空格的缩进,我将宽度从80减小到78。在

更新2

感谢Tomerikoo建议使用textwrap.fill,代码现在更简单了:import textwrap

text = [str(i) for i in range(1, 100)]

one_line = ', '.join('{:>2}'.format(e) for e in text)

# one_line == ' 1, 2, 3, ...'

print(textwrap.fill(one_line,

width=80,

initial_indent=' ',

subsequent_indent=' '))

更新3

在这次更新中,我添加了Tim的建议,以进一步减少步骤。在import textwrap

one_line = ', '.join('{:>2}'.format(e) for e in range(1, 100))

# one_line == ' 1, 2, 3, ...'

print(textwrap.fill(one_line,

width=80,

initial_indent=' ',

subsequent_indent=' '))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值