【发布时间】:2016-12-09 13:27:34
【问题描述】:
我有一个函数,它将为我提供最外层的值 (key_n) 和最内层的值,附加到单个字符串,然后将其附加到包含所有单个字符串组合的字符串(希望这是有道理的) .
big_milon = {'key_1' : {'{key1':'dasdadsad', 'key2': 'hat', 'key3':'cat'},
'key_2' : {'key1':'fat', 'key2': 'pat','key3':'lat'}}
def string_getter():
prop_string = ''
full_list = ''
for i,j in big_milon.items():
prop_list = []
itemcode = i
prop = list(j.values())
for l in range(len(prop)):
prop_string = prop_string +'\t'+ "{" + prop[l] + "}"
full_list = full_list + itemcode + prop_string + '\n'
prop_string = ''
return full_list
print(string_getter())
它工作正常,只是有时,它看起来不像值之间有一个选项卡,而是看起来像两个选项卡或没有选项卡
例如
print(string_getter())
【问题讨论】:
-
所以你不喜欢标签的打印方式,我们可以忽略所有代码?你希望它看起来如何? tabstop=4 看起来是正确的。
-
这不是错误 - 这是选项卡的预期行为(将光标移动到 N 的下一个乘法)。如果您想要一致的制表,请使用字符串格式选项或专用库,例如
tabulate. -
@ŁukaszRogalski 是对的,但需要计算每个值的大小,以免达到初始偏移值。
标签: python