首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python #2中编写人类可读的空格分隔文本

在Python #2中编写人类可读的空格分隔文本
EN

Stack Overflow用户
提问于 2014-02-17 13:32:17
回答 1查看 1.2K关注 0票数 1

我想把2Dnumpy数组写成人类可读的文本文件格式。我在前面遇到了这个问题,但它只指定了与数组中的每个元素相关联的相同数量的空间。在它中,所有元素都用10个空格隔开。我想要的是为我的数组中的每一列提供不同数量的空间。

Writing white-space delimited text to be human readable in Python

例如,我希望第一列有7个空格,第二列有10个空格,第三列有4个空格,等等。这和numpy.savetxt有相似之处吗(文件名,X,分隔符= ',',fmt = '%-10s'),但是哪里不是'%-10s‘,而是'%-7s,%-10s,%-4s’等等?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-02-17 16:31:55

下面是它的一个示例(Python2&3):

代码语言:javascript
复制
l = [[1,2,3,4], [3,4,5,6]]
for row in l:
    print(u'{:<7} {:>7} {:^7} {:*^7}'.format(*row))

1             2    3    ***4***
3             4    5    ***6***

格式选项取自http://docs.python.org/2/library/string.html

代码语言:javascript
复制
>>> '{:<30}'.format('left aligned')
'left aligned                  '
>>> '{:>30}'.format('right aligned')
'                 right aligned'
>>> '{:^30}'.format('centered')
'           centered           '
>>> '{:*^30}'.format('centered')  # use '*' as a fill char
'***********centered***********'

如果您需要一个文件,请执行以下操作:

代码语言:javascript
复制
l = [[1,2,3,4], [3,4,5,6]]
with open('file.txt', 'wb') as f:
    f.write(u'\ufeff'.encode('utf-8'))
    for row in l:
        line = u'{:<7} {:>7} {:^7} {:*^7}\r\n'.format(*row)
        f.write(line.encode('utf-8'))

该文件的内容为

代码语言:javascript
复制
1             2    3    ***4***
3             4    5    ***6***

编码方式为UTF-8。这意味着您的标题中不仅可以包含数字,还可以包含任意字母:☠ ⇗ ⌚ ② ☕ ☃ ⛷

代码语言:javascript
复制
heading = [u'☠', u'⇗', u'⌚', u'②']
with open('file.txt', 'wb') as f:
    f.write(u'\ufeff'.encode('utf-8'))
    line = '{:<7} {:>7} {:^7} {:*^7}\r\n'.format(*heading)
    f.write(line.encode('utf-8'))
    for row in l:
        line = '{:<7} {:>7} {:^7} {:*^7}\r\n'.format(*row)
        f.write(line.encode('utf-8'))

☠             ⇗    ⌚    ***②***
1             2    3    ***4***
2             3    4    ***5***
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21821467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档