Python 如何格式化文本文件的打印输出?

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

我有一个名为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
     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”是的,就像那样它仍然不起作用。表示无效语法: