Python 如何格式化文本文件的打印输出?
我有一个名为animal.txt的文本文件Python 如何格式化文本文件的打印输出?,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,我有一个名为animal.txt的文本文件 1.1 Animal Name : Dog Animal Type : Mammal Fur : Yes Scale : No 1.2 Animal Name : Snake Animal Type : Reptile Fur : No Scale : Yes 1.3 Animal Name : Frog
1.1 Animal Name : Dog
Animal Type : Mammal
Fur : Yes
Scale : No
1.2 Animal Name : Snake
Animal Type : Reptile
Fur : No
Scale : Yes
1.3 Animal Name : Frog
Animal Type : Amphibian
Fur : No
Scale : No
1.x Animal Name : aaaaaa
Animal Type : bbbbbb
Fur : cccccc
Scale : dddddd
我想要的输出是:
Dog Mammal Yes
Snake Reptile No
Frog Amphibian No
我得到的结果是:
Dog Mammal Yes
Snake Reptile No
Frog Amphibian No
这是我目前拥有的代码,可以打印出我当前的输入
with open('animal.txt', 'r') as fp:
for line in fp:
header = line.split(':')[0]
if 'Animal Name' in header:
animal_name = line.split(':')[1].strip()
print animal_name,
elif 'Animal Type' in header:
animal_type = line.split(':')[1].strip()
print animal_type,
elif 'Fur' in header:
fur = line.split(':')[1].strip()
print fur
elif '1.x' in header:
break
是否有方法格式化或添加到现有代码中,以获得所需的输出?在打印的项目之间使用\t。因此,请打印动物名称\t,然后依次打印代码的其余部分
打开'animal.txt','r'作为fp:
对于fp中的行:
页眉=行。拆分“:”[0]
如果标题中有“动物名称”:
animal_name=line.split':'[1]。strip
打印动物名称\t,
标题中的elif“动物类型”:
animal_type=line.split':'[1]。strip
打印动物\u类型\t,
标题中的elif“毛发”:
毛发=线条。拆分“:”[1]。剥离
打印毛发\t
标题中的elif“1.x”:
break尝试过,但不起作用。给我此消息>>>语法错误:行继续字符后出现意外字符抱歉,请尝试将“\t”放在那里并加引号。这应该可以解决这个问题。像这样?->打印动物名称“\t”是的,就像那样它仍然不起作用。表示无效语法: