在一定长度后将 Python dict 输出中断到新行
Breaking Python dict output onto new line after certain length
我正在尝试找到一种方法来打印字典中的值,以便在一定长度(例如 5)后集合中断并在新行上继续。
示例:
dict = {'Upper':'ABCDEFGHI', 'Lower':'abcdefghi', 'Number':'123456789'}
def insertNewlines(text, lineLength):
if len(text) <= lineLength:
return text
else:
return text[:lineLength] + '\n' + insertNewlines(text[lineLength:], lineLength)
for key, val in dict.items():
print(insertNewlines(val,5))
输出
ABCDE
FGHI
abcde
fghi
12345
6789
期望输出:
ABCDE
abcde
12345
FGHI
fghi
6789
假设所有 dict 值具有相同的长度,以下代码将通过以递增的间隔获取字符串切片来提供所需的输出。
dict = {'Upper':'ABCDEFGHI', 'Lower':'abcdefghi', 'Number':'123456789'}
line_length = 5
value_length = len(next(iter(dict.values())))
count = 0
while count * line_length < value_length:
for value in dict.values():
print(value[count * line_length: (count + 1) * line_length])
print()
count += 1
或者类似地,在范围内使用 for 循环
import math
for i in range(math.ceil(value_length / line_length)):
for value in dict.values():
print(value[i * line_length: (i + 1) * line_length])
print()
我正在尝试找到一种方法来打印字典中的值,以便在一定长度(例如 5)后集合中断并在新行上继续。
示例:
dict = {'Upper':'ABCDEFGHI', 'Lower':'abcdefghi', 'Number':'123456789'}
def insertNewlines(text, lineLength):
if len(text) <= lineLength:
return text
else:
return text[:lineLength] + '\n' + insertNewlines(text[lineLength:], lineLength)
for key, val in dict.items():
print(insertNewlines(val,5))
输出
ABCDE
FGHI
abcde
fghi
12345
6789
期望输出:
ABCDE
abcde
12345
FGHI
fghi
6789
假设所有 dict 值具有相同的长度,以下代码将通过以递增的间隔获取字符串切片来提供所需的输出。
dict = {'Upper':'ABCDEFGHI', 'Lower':'abcdefghi', 'Number':'123456789'}
line_length = 5
value_length = len(next(iter(dict.values())))
count = 0
while count * line_length < value_length:
for value in dict.values():
print(value[count * line_length: (count + 1) * line_length])
print()
count += 1
或者类似地,在范围内使用 for 循环
import math
for i in range(math.ceil(value_length / line_length)):
for value in dict.values():
print(value[i * line_length: (i + 1) * line_length])
print()