【问题标题】:Python string format, drop characters if too longPython 字符串格式,如果太长则丢弃字符
【发布时间】:2013-07-01 16:07:19
【问题描述】:

目前我有一个用于将表格中的列打印到标准输出的模板:

template = "%-5s%-8s%-20s%-20s%-20s%-15s%-15s%-15s%-15s%-15s"

我用它来打印我的行

print template % row

但是,行中的某些列超出了字符的数量(例如,第一个字符串应限制为模板分配的空间 (5))。是否有一个函数或说明符可以与字符串格式一起使用,它将字符串末尾的字符切掉,以便它适合分配的空间(或者更好的是,我指定为限制的长度)。那是没有做类似的事情:

for i in range(0, len(row)):
    row[col] = row[col][0:limit[i]]

【问题讨论】:

    标签: python string python-2.7


    【解决方案1】:

    指定字符串格式的精度。

    >>> '%.5s' % ('1234567890',)
    '12345'
    

    【讨论】:

    • 应该是%5.5s 以应用最小和最大尺寸。
    猜你喜欢
    • 1970-01-01
    • 2012-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-03
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    相关资源
    最近更新 更多