我试图在每次出现逗号时创建一个新行,但是将前几列保留在新行中。为了清楚起见:
A B C, D,
E F Z
G H I, J,
应该像最后一样:
A B C
A B D
E F Z
G H I
G H J
我是python的新手,但是我正在尝试,所以我知道split对我来说是最好的,但是我不知道如何保留前几列(实际上要保留7列)以及每次出现的次数逗号,在前7列仍在其中创建新行
到目前为止,我已经尝试过:
lines = df.split(",")
for column in lines:
print(column)
这会给我:
A B C
D
E F Z
G H I
J
我知道的不多,但这只是一个开始:)
答案 0 :(得分:0)
import copy
example = 'A\tB\tC,\tD,\nE\tF\tZ\nG\tH\tI,\tJ,'
lines = example.split('\n')
new_text = ''
for line in lines:
line = line.rstrip(',').split('\t')
new_lines = [[]]
index = 0
for element in line:
if ',' in element:
new_lines.append(copy.deepcopy(new_lines[index]))
new_lines[index].append(element.rstrip(','))
index += 1
else:
new_lines[index].append(element)
for new_line in new_lines:
new_text += '\t'.join(new_line)+'\n'
print(new_text)
这给出了
A B C
A B D
E F Z
G H I
G H J