打印字典变量名称列表

时间:2016-02-24 23:20:42

标签: python list dictionary printing

我的任务是:

制作几个词典,其中每个词典的名称是宠物的名称。在每个字典中,包括动物的种类和所有者的名字。将这些词典存储在名为pets的列表中。接下来,循环浏览您的列表,并打印出您对每只宠物所知的所有内容。

到目前为止我有什么:

rover = {'type': 'dog', 'owner': 'joe'}
blackie = {'type': 'cat', 'owner': 'gail'}
polly = {'type': 'bird', 'owner': 'paul'}
seth = {'type': 'snake', 'owner': 'stan'}

pets = [rover, blackie, polly, seth]

for pet in pets:
    print("\nPet Name:", "\nType:", pet['type'].title(), "\nPet Owner:", pet['owner'].title())

到目前为止的输出:

宠物名称: 类型:狗 宠物主人:乔

宠物名称: 类型:猫 宠物主人:盖尔

宠物名称: 类型:鸟 宠物主人:保罗

宠物名称: 类型:蛇 宠物主人:斯坦

我的问题:

我需要在代码中添加什么才能让输出包含宠物名称?

期望输出:

宠物名称:流浪者 类型:狗 宠物主人:乔

宠物名称:Blackie 类型:猫 宠物主人:盖尔

宠物名称:波莉 类型:鸟 宠物主人:保罗

宠物名称:赛斯 类型:蛇 宠物主人:斯坦

2 个答案:

答案 0 :(得分:7)

我会将名字存储在字典中。

rover = {'name' : 'rover', 'type': 'dog', 'owner': 'joe'}

答案 1 :(得分:0)

您可以使用if语句:

for pet in pets:
    for v in pet.values():
        if v == 'joe':
            print("\nPet Name: Rover", "\nType:", pet['type'].title(), "\nPet Owner:", pet['owner'].title())
        if v == 'gail':
            print("\nPet Name: Blackie", "\nType:", pet['type'].title(), "\nPet Owner:", pet['owner'].title())
        if v == 'paul':
            print("\nPet Name: Polly", "\nType:", pet['type'].title(), "\nPet Owner:", pet['owner'].title())
        if v == 'stan':
            print("\nPet Name: Seth", "\nType:", pet['type'].title(), "\nPet Owner:", pet['owner'].title())

输出:

'Pet Name: Rover '
'Type: Dog'
'Pet Owner: Joe'

'Pet Name: Blackie'
'Type: Cat'
'Pet Owner: Gail'

'Pet Name: Polly'
'Type: Bird'
'Pet Owner: Paul'

'Pet Name: Seth'
'Type: Snake'
'Pet Owner: Stan'