我可以强制 pprint 每行打印一定数量的元素而不是宽度吗?
Can I force pprint to print a set number of elements per line instead of width?
我有一个值列表,并希望以这样的方式打印它,即在一定数量的元素后 pprint
强制换行。我正在处理动态数据集,无法预测每条新的所需线的宽度。元素本身完全是字符串,代表一个布尔值。这是想要的效果:
[ o x x x o
x o x x x
x x o x o
x o x o x
x x x x o ]
您可以使用 textwrap
。具体细节将取决于您的代码和您想要的内容,但这是一个示例:
import random
import textwrap
some_booleans = [
random.choice([True, False]) for _ in range(30)
]
stringified = ''.join('x' if elem else 'o' for elem in some_booleans)
adjusted_lines = textwrap.wrap(stringified, width=10)
to_print = '\n'.join(adjusted_lines)
print(to_print)
输出:
oxoxoxoxxo
xxxxooxooo
xxxxoxxxoo
我有一个值列表,并希望以这样的方式打印它,即在一定数量的元素后 pprint
强制换行。我正在处理动态数据集,无法预测每条新的所需线的宽度。元素本身完全是字符串,代表一个布尔值。这是想要的效果:
[ o x x x o
x o x x x
x x o x o
x o x o x
x x x x o ]
您可以使用 textwrap
。具体细节将取决于您的代码和您想要的内容,但这是一个示例:
import random
import textwrap
some_booleans = [
random.choice([True, False]) for _ in range(30)
]
stringified = ''.join('x' if elem else 'o' for elem in some_booleans)
adjusted_lines = textwrap.wrap(stringified, width=10)
to_print = '\n'.join(adjusted_lines)
print(to_print)
输出:
oxoxoxoxxo
xxxxooxooo
xxxxoxxxoo