8-6 編寫一個名爲city_country() 的函數,它接受城市的名稱及其所屬的國家。這個函數應返回一個格式類似於下面這樣的字符串:
def city_country(city, country):
print city + ', ' + country
if __name__ == "__main__":
city_country('Beijing', 'China')
city_country('Shanghai', 'China')
city_country('London', 'Britain')
8-7 編寫一個名爲make_album() 的函數,它創建一個描述音樂專輯的字典。這個函數應接受歌手的名字和專輯名,並返回一個包含這兩項信息的字典。使用這個函數創建三個表示不同專輯的字典,並打印每個返回的值,以覈實字典正確地存儲了專輯的信息。
給函數make_album() 添加一個可選形參,以便能夠存儲專輯包含的歌曲數。如果調用這個函數時指定了歌曲數,就將這個值添加到表示專輯的字典中。調用這個函數,並至少在一次調用中指定專輯包含的歌曲數。
def make_album(singer, album, song_number = -1):
dic = {}
dic['singer'] = singer
dic['album'] = album
if song_number >= 0:
dic['song_number'] = song_number
return dic
if __name__ == "__main__":
print make_album('A', 'a')
print make_album('wubai', 'nuoweidesenlin')
print make_album('chenguanxi', 'yanzhaomen', '5')
8-8 在爲完成練習8-7編寫的程序中,編寫一個while 循環,讓用戶輸入一個專輯的歌手和名稱。獲取這些信息後,使用它們來調用函數make_album() ,並將創建的字典打印出來。在這個while 循環中,務必要提供退出途徑。
def make_album1(singer, album):
dic = {}
dic['singer'] = singer
dic['album'] = album
return dic
if __name__ == "__main__":
while True:
singer = raw_input('Please input singer\'s name: ')
if singer == 'q':
break
album = raw_input('Please input album\'s name: ')
if album == 'q':
break
print (make_album1(singer, album))