如何对齐包含用户登录数据的纯文本文件中的列?

如何对齐包含用户登录数据的纯文本文件中的列?

对齐文本文件中的列

问题:

如何对齐包含用户登录数据的纯文本文件中的列?文本数据如下:

dtrapani  hcpd-epd-3687  mon  05/13/2013    9:47:01.72
dlibby  hcpd-cos-4611  mon  05/13/2013    9:49:34.55
lmurdoch  hcpd-sddeb-3736  mon  05/13/2013    9:50:38.48
lpatrick  hcpd-win7-015  mon  05/13/2013    9:57:44.57
mlay  hcpd-war-3744  mon  05/13/2013  10:00:07.94
eyoung  hcpd-nlcc-0645  mon  05/13/2013  10:03:01.83

需要将数据输出到左对齐和右对齐的列中:

dtrapani  hcpd-epd-3687    mon  05/13/2013    9:47:01.72
dlibby    hcpd-cos-4611    mon  05/13/2013    9:49:34.55
lmurdoch  hcpd-sddeb-3736  mon  05/13/2013    9:50:38.48
lpatrick  hcpd-win7-015    mon  05/13/2013    9:57:44.57
mlay      hcpd-war-3744    mon  05/13/2013   10:00:07.94
eyoung    hcpd-nlcc-0645   mon  05/13/2013   10:03:01.83

解答:

使用新的 python 打印格式化程序(假设字段是一致的):

with open(r'C:path	ologons.txt', 'r') as f:
    for line in f:
        data = line.split()    # Splits on whitespace
        print('{0[0]:<15}{0[1]:<15}{0[2]:<5}{0[3]:<15}{0[4]:>15}'.format(data))

这将使用称为占位符格式字符串的特殊语法来对齐数据:

  • :
  • :> 右对齐
  • :
  • :15> 将字段右对齐,长度为 15 个字符

以上就是如何对齐包含用户登录数据的纯文本文件中的列?的详细内容,更多请关注其它相关文章!