python编程:从入门到实践习题第六章6-1~6-11*

6-1 人:
使用一个字典来存储一个熟人的信息,包括名、姓、年龄和居住的城市。 该字典应包含键 first_name、last_name、age 和 city。将存储在该字典中的每项信息都 打印出来。

	people={'first_name':'Alan','last_name':'Walker','age':28,'city':'Daqing'}
    print(people)

6-2 喜欢的数字:
使用一个字典来存储一些人喜欢的数字。请想出 5个人的名字, 并将这些名字用作字典中的键;想出每个人喜欢的一个数字,并将这些数字作为值存储 在字典中。打印每个人的名字和喜欢的数字。为让这个程序更有趣,通过询问朋友确保 数据是真实的。

favnum={'Alan':1,'Mike':2,'Tonny':3,'Tracy':4,'Steve':5}
for people in favnum:
    print(people+"'s"+" favorite number is "+str(favnum[people])+'.')

6-3 词汇表:

Python字典可用于模拟现实生活中的字典,但为避免混淆,我们将后 者称为词汇表。
 想出你在前面学过的 5 个编程词汇,将它们用作词汇表中的键,并将它们的含 义作为值存储在词汇表中。
 以整洁的方式打印每个词汇及其含义。为此,你可以先打印词汇,在它后面加 上一个冒号,再打印词汇的含义;也可在一行打印词汇,再使用换行符(\n) 插入一个空行,然后在下一行以缩进的方式打印词汇的含义。

vocabulary={
    "strip()":"delete the space in the beginning and end",
    "append()":"add element to the end of a list",
    "sort":"arrange elements according to the alphabetic order",
    "len":"get the length of a list",
    "[:]":"copy a list"
    }
for word in vocabulary.keys():
    print(word+":"+vocabulary[word]+".\n")

6-4 词汇表 2:既然你知道了如何遍历字典,现在请整理你为完成练习 6-3 而编写 的代码,将其中的一系列 print 语句替换为一个遍历字典中的键和值的循环。确定该循环正确无误后,再在词汇表中添加 5 个 Python 术语。当你再次运行这个程序时,这些 新术语及其含义将自动包含在输出中。

vocabulary={
    "strip()":"delete the space in the beginning and end",
    "append()":"add element to the end of a list",
    "sort":"arrange elements according to the alphabetic order",
    "len":"get the length of a list",
    "[:]":"copy a list"
    }
for word in vocabulary.keys():
    print(word+":"+vocabulary[word]+".\n")
vocabulary["max()"]="find the maximum number in a list"
print(vocabulary)

6-5 河流:
创建一个字典,在其中存储三条大河流及其流经的国家。其中一个键— 值对可能是’nile’: ‘egypt’。
 使用循环为每条河流打印一条消息,如“The Nile runs through Egypt.”。
 使用循环将该字典中每条河流的名字都打印出来。
 使用循环将该字典包含的每个国家的名字都打印出来。

rivers={"nile":"egypt","huanghe":"zhongguo","lajihe":"india"}
for river in rivers:
    print("The "+river+" runs through "+rivers[river].title())
    print(river)
    print(rivers[river])

6-6 调查:
在 6.3.1节编写的程序 favorite_languages.py中执行以下操作。
 创建一个应该会接受调查的人员名单,其中有些人已包含在字典中,而其他人 未包含在字典中。
 遍历这个人员名单,对于已参与调查的人,打印一条消息表示感谢。对于还未 参与调查的人,打印一条消息邀请他参与调查。

favorite_languages={
    'jen': 'python',
    'sarah': 'c',
    'edward': 'ruby',
    'phil': 'python',
    }
for name,language in favorite_languages.items(): 
    print(name.title()+"'s favorite language is "+ 
        language.title()+".") 
list=['jen','phil','mike','howard']
for people in list:
    if people in favorite_languages.keys():
        print("Thanks for your attendance,"+people.title()+".")
    else:
        print(people.title()+",please take our poll!")

6-7 人:
在为完成练习 6-1而编写的程序中,再创建两个表示人的字典,然后将这 三个字典都存储在一个名为 people 的列表中。遍历这个列表,将其中每个人的所有信 息都打印出来。

Alan={'first_name':'Alan','last_name':'Walker','age':28,'city':'Daqing'}
Michael={'first_name':'Michael','last_name':'Jackson','age':20,'city':'Haerbin'}
Kobe={'first_name':'Kobe','last_name':'bryant','age':21,'city':'Taikang'}
peoples=[Alan,Michael,Kobe]
for people in peoples:
    print(people['first_name']+":")
    for user,user_info in people.items():
        print("\t"+user.title()+":"+str(user_info)+".")

6-8 宠物:
创建多个字典,对于每个字典,都使用一个宠物的名称来给它命名;在 每个字典中,包含宠物的类型及其主人的名字。将这些字典存储在一个名为 pets 的列 表中,再遍历该列表,并将宠物的所有信息都打印出来。

学到现在,无法解决如何打印被嵌套在列表里的字典的名字这个问题,除非在字典里添加名字相关的
键值对,明显是做了无用功,应该是学到以后有能实现的方法,先mark以后来解决

6-9 喜欢的地方:
创建一个名为 favorite_places 的字典。在这个字典中,将三个 人的名字用作键;对于其中的每个人,都存储他喜欢的 1~3个地方。为让这个练习更有 趣些,可让一些朋友指出他们喜欢的几个地方。遍历这个字典,并将其中每个人的名字 及其喜欢的地方打印出来。

favorite_cities={'mike':['daqing','haerbin','yichun'],
    'lucy':['daqing'],
    'lily':['daqing','haerbin']
    }
for people,cities in favorite_cities.items():
    print("\n"+people.title()+"'s favorite cities"+":\n")
    for city in cities:
        print("\t"+city.title())
    

6-10 喜欢的数字:
修改为完成练习 6-2而编写的程序,让每个人都可以有多个喜欢 的数字,然后将每个人的名字及其喜欢的数字打印出来。

favnum={'Alan':[1,2,3],
    'Mike':[2,4,5,6],
    'Tonny':[3,2,1,5],
    'Tracy':[4,42,53],
    'Steve':[5,21,32,176]
    }
for people,nums in favnum.items():
    print("\n"+people+"'s"+" favorite number is :")
    for num in nums:
        print("\t"+str(num))

6-11 城市:
创建一个名为 cities 的字典,其中将三个城市名用作键;对于每座城 市,都创建一个字典,并在其中包含该城市所属的国家、人口约数以及一个有关该城市 的事实。在表示每座城市的字典中,应包含 country、population 和 fact 等键。将每座 城市的名字以及有关它们的信息都打印出来。

cities={
    'daqing':{
        'country':'china',
        'population':'about 3million',
        'fact':'a city of oil',
        },
    'haerbin':{
        'country':'china',
        'population':'about 10million',
        'fact':'the captical city of Heilongjiang province',
        },
    'yichun':{
        'country':'china',
        'population':'about 1million',
        'fact':'my hometown',
        }
    }
for city,city_info in cities.items():
    print('\n'+city.title()+":")
    for info,value in city_info.items():
        print("\t"+info.title()+":"+value.capitalize()+".")

你可能感兴趣的:(python编程:从入门到实践习题第六章6-1~6-11*)