天天看點

python從入門到實踐課後習題第六章

"""
6-1 使用一個字典來存儲一個熟人的資訊,包括名、姓、年齡和居住的城市。該字典應包含鍵 
first_name 、 last_name 、 age 和 city 。将存儲在該字典中的每項資訊都列印出來。
"""
info = {'first_name': 'leboron', 'last_name': 'jams', 'age': 34, 'city': 'akron'}

first_name = info['first_name']
last_name = info['last_name']
age = info['age']
city = info['city']
print(first_name.title() + " " + last_name + " is " + str(age) + " years old and was born in " + city + ".")
           
"""
6-2 喜歡的數字 :使用一個字典來存儲一些人喜歡的數字。請想出 5 個人的名字,并将這些名字用作字典中的鍵;
想出每個人喜歡的一個數字,并将這些數字作為值存儲在字典中。
列印每個人的名字和喜歡的數字。為讓這個程式更有趣,通過詢問朋友確定資料是真實的。
"""

favorite_num = {'louie': '7', 'link': '11', 'park': '23', 'tommy': '19', 'ann': '21'}

print("Louie favorite number is " + favorite_num['louie'])
print("link favorite number is " + favorite_num['link'])
print("Park favorite number is " + favorite_num['park'])
print("Tommy favorite number is " + favorite_num['tommy'])
print("Ann favorite number is " + favorite_num['ann'])
           
"""
6-3 詞彙表 : Python 字典可用于模拟現實生活中的字典,但為避免混淆,我們将後者稱為詞彙表。
想出你在前面學過的 5 個程式設計詞彙,将它們用作詞彙表中的鍵,并将它們的含義作為值存儲在詞彙表中。
以整潔的方式列印每個詞彙及其含義。為此,你可以先列印詞彙,在它後面加上一個冒号,
再列印詞彙的含義;也可在一行列印詞彙,再使用換行符( \n )插入一個空行,
然後在下一行以縮進的方式列印詞彙的含義。
"""
vocabulary = {'php': '世界上最好的語言', 'python': '最簡潔的語言',
              'java': '世界上用的最廣的語言', 'sql': '獨一無二的資料庫語言'}

print("php語言: \n" + vocabulary['php'])
print("python語言: \n" + vocabulary['python'])
print("javaP語言: \n" + vocabulary['java'])
print("sql語言: \n" + vocabulary['sql'])
           
"""
6-4 詞彙表 2  :既然你知道了如何周遊字典,現在請整理你為完成練習 6-3 而編寫的代碼,将其中的一系列 
print 語句替換為一個周遊字典中的鍵和值的循環。确定該循環正确無誤後,
再在詞彙表中添加 5 個 Python 術語。當你再次運作這個程式時,這些新術語及其含義将自動包含在輸出中。
"""

vocabulary = {'php': '世界上最好的語言', 'python': '最簡潔的語言',
              'java': '世界上用的最廣的語言', 'sql': '獨一無二的資料庫語言'}


for language, info in vocabulary.items():
    print(language + ":\n" + info)
           
"""
6-5 河流 :建立一個字典,在其中存儲三條大河流及其流經的國家。其中一個鍵 — 值對可能是 'nile': 'egypt' 。
使用循環為每條河流列印一條消息,如 “The Nile runs through Egypt.” 。
使用循環将該字典中每條河流的名字都列印出來。
使用循環将該字典包含的每個國家的名字都列印出來。
"""

rivers = {'nile': 'egypt', 'amazon': 'Brazil ', 'Yangtze': 'china'}

for river, country in rivers.items():
    print("The " + river.title() + " runs through " + country.title())
           
"""
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() + ".")

survey_list = ['jen', 'link', 'sarah', 'lisa']
for investigated in survey_list:
    if investigated in favorite_languages:
        print(investigated + ", Thank you for your cooperation.")
    else:
        print(investigated + ", Could you do me a favor?")
           
"""
6-7 人 :在為完成練習 6-1 而編寫的程式中,再建立兩個表示人的字典,然後将這三個字典都存儲
在一個名為 people 的清單中。周遊這個清單,将其中每個人的所有資訊都列印出來。
"""

jams = {'first_name': 'leboron', 'last_name': 'jams', 'age': 34, 'city': 'akron'}
wade = {'first_name': 'dwayne', 'last_name': 'wade', 'age': 34, 'city': 'miami'}
bosh = {'first_name': 'cris', 'last_name': 'bosh', 'age': 32, 'city': 'washington'}
peoples = [jams, wade, bosh]

for people in peoples:
    print(people)
           
"""
6-8 寵物 :建立多個字典,對于每個字典,都使用一個寵物的名稱來給它命名;在每個字典中,
包含寵物的類型及其主人的名字。将這些字典存儲在一個名為 pets的清單中,
再周遊該清單,并将寵物的所有資訊都列印出來。
"""

miaomiao_cat = {'name': 'miaomiao_cat', 'owner': 'sarah'}
haha_dog = {'name': 'haha_dog', 'owner': 'link'}
pink_pig = {'name': 'pink_pig', 'owner': 'lisa'}
pets = [miaomiao_cat, haha_dog, pink_pig]

for pet in pets:
    print("The owner of the " + pet['name'] + " is " + pet['owner'])
           
"""
6-9 喜歡的地方 :建立一個名為 favorite_places 的字典。在這個字典中,将三個人的名字用作鍵;
對于其中的每個人,都存儲他喜歡的 1~3 個地方。為讓這個練習更有趣些,
可讓一些朋友指出他們喜歡的幾個地方。周遊這個字典,并将其中每個人的名字及其喜歡的地方列印出來。
"""

favorite_places = {'jams': {'NewYork', 'Miami', 'Aklon'},
                   'wade': {'Miami', 'Aklun'},
                   'bosh': {'toronto', 'Miami'}
                   }

for name, places in favorite_places.items():
    print(name.title() + " favorite places:")
    for place in places:
        print(place)
           
"""
6-10 喜歡的數字 :修改為完成練習 6-2 而編寫的程式,
讓每個人都可以有多個喜歡的數字,然後将每個人的名字及其喜歡的數字列印出來。
"""

favorite_nums = {'louie': {'7', '8', '9'},
                 'link': {'11', '12', '13'},
                 'park': {'23', '24'},
                 'tommy': {'19', '20'},
                 'ann': {'21', '22', '23'}
                 }

for name, nums in favorite_nums.items():
    print(name.title() + " favorite number is:")
    for num in nums:
        print(num)
           
"""
6-11 城市 :建立一個名為 cities 的字典,其中将三個城市名用作鍵;對于每座城市,都建立一個字典,
并在其中包含該城市所屬的國家、人口約數以及一個有關該城市的事實。在表示每座城市的字典中,
應包含 country 、 population 和 fact 等鍵。将每座城市的名字以及有關它們的資訊都列印出來。
"""

cities = {'miami': {'country': 'the USA', 'population': '30000000', 'fact': 'very good'},
          'hangzhou': {'country': 'china', 'population': '20000000', 'fact': 'prety good'},
          'longdon': {'country': 'the UK', 'population': '400000000', 'fact': 'very very good'}
          }

for city_name, info in cities.items():

        print(city_name.title() + " is belong to " + info['country'])
        print(city_name.title() + " has an estimated population of  " + info['population'])
        print(city_name.title() + " is " + info['fact'] + "!~")
           

繼續閱讀