【问题标题】:proper print indentation in pythonpython中正确的打印缩进
【发布时间】:2020-05-12 14:38:18
【问题描述】:

我正在使用从 dict 打印键和值的命令行工具,并且想知道解决我遇到的两个缩进问题的正确方法是什么:

第一个问题:

应该是:

short key       value
very long key   value

在我得到的键和值之间使用/t 时:

short key   value
very long key   value

第二个问题

应该是:

key    longggggggggg
       gggg value

但我明白了:

key    longggggggggg
gggg value

感谢您的帮助! :)

【问题讨论】:

  • 如何显示硬制表符取决于客户端/终端。如果您需要更多控制权,您可能只想自己管理 [前导] 空格,而根本不使用制表符。
  • @SimonMartineau 感谢您的链接,它确实帮助我解决了第一个问题。第二个问题仍然存在:)

标签: python string printing indentation


【解决方案1】:

假设你有以下字典:

items = {'first_key': 'normal_length', 'second_key': 'veeeeeeeeeeeeryyyyyyyyy_loooooong_value'}

你可以这样做

n = 20  # Max horizontal length for the value
for key, value in items:
    print('{:<20}     {:<n}'.format(key, value))
    if len(str(value)) > 20:
        for sub_string in [str(value)[i:i+n] for i in range(n, len(str(value), n))]:
            print(' '*25 + sub_string)

你首先做你通常做的事情,然后在第一个子字符串之后迭代每个长度为 20 的子字符串。我没有对此进行测试,但这只是您的路径

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-16
    • 2020-01-12
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    • 2011-11-23
    • 2017-09-04
    • 1970-01-01
    相关资源
    最近更新 更多