将多列垂直文本转换为水平

问题描述

我试过这些,但它只用于一列。 使用 notepad++python。任何可以处理多列文本的解决方案?

# Input:
tim
oso
d n
a d
y a
  y

# Output:
today 
is 
monday

解决方法

你可以用一个循环很容易地做到这一点,比如:

s = "tim\noso\nd n\na d\ny a\n  y"
bits = s.split('\n')
lines = ['' for i in range(0,len(bits[0]))]
for bit in bits:
  for i in range(0,len(bit)):
    if bit[i] != ' ':
      lines[i] += bit[i]
'\n'.join(lines)