请提供帮助,我是python的新手,我不知道如何开始。
我有一列这样的信息,用“标题”分隔的信息块以“ AW”开头:
AW ABC
x
y
z
AW DEF
w
p
o
y
t
AW QQWL
h
k
如何将与相应值相关的标题打印到rigth?
AW ABC
x AW ABC
y AW ABC
z AW ABC
AW DEF
w AW DEF
p AW DEF
o AW DEF
y AW DEF
t AW DEF
AW QQWL
h AW QQWL
k AW QQWL
在此先感谢您的帮助。
更新
我目前能执行的代码如下:
column='''AW ABC
x
y
z
AW DEF
w
p
o
y
t
AW QQWL
h
k'''
values = column.split("\n")
for v in values:
if "AW" in v:
s = v
print v
else:
print s, v
有没有更Python的方式来做到这一点?
最佳答案
直接:
column='''AW ABC
x
y
z
AW DEF
w
p
o
y
t
AW QQWL
h
k'''
for line in column.splitlines():
if line.startswith('AW'):
head = line
else:
line = f'{line}{head:>12}'
print(line)
输出:
AW ABC
x AW ABC
y AW ABC
z AW ABC
AW DEF
w AW DEF
p AW DEF
o AW DEF
y AW DEF
t AW DEF
AW QQWL
h AW QQWL
k AW QQWL