python把文件平均分成三个_python 把文件内容分成三列

比如有一文件catfile.txt:1234567891011121314我想分成三列显示:catfile.txt1611271238134914510#!/usr/bin/envpythondefitercolumn(lines,column_line):block=[]forlninlines:bloc...

比如有一文件 cat file.txt:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

我想分成三列显示: cat file.txt

1 6 11

2 7 12

3 8 13

4 9 14

5 10

#!/usr/bin/env python

def itercolumn(lines, column_line):

block = []

for ln in lines:

block.append(ln)

if len(block) == column_line:

yield block

block = []

if 0 < len(block) < column_line:

block = block + [''] * (column_line - len(block))

yield block

lns = [ln.strip() for ln in open("file.txt", 'r')]

column_num = 3

column_ln = (column_num + len(lns) - 1) / column_num

columns = [column for column in itercolumn(lns, column_ln)]

for row in zip(*columns):

print "\t".join(row)

求更简洁更高效的 PYTHON代码, 上面代码有点复杂

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值