2.23
Posted phyllissryo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.23相关的知识,希望对你有一定的参考价值。
1 8.2.3 2 def describe_pet(pet_name, animal_type=‘dog‘): 3 """显示宠物的信息""" 4 print(" I have a " + animal_type + ".") 5 print("My " + animal_type + "‘s name is " + pet_name.title() + ".") 6 7 describe_pet(pet_name=‘willie‘) 8 """这里修改了函数describe_pet() 的定义,在其中给形参animal_type 指定了默认值‘dog‘ 。 9 这样,调用这个函数时,如果没有给animal_type 指定值,Python将把这个形参设置为‘dog 10 """ 11 def make_shirt(size,print_words = ""Hello World""): 12 """接收T恤的尺码和印刷字样""" 13 print(" Your T-shirt‘s size is " + size + ".") 14 print(print_words + ‘ will be print on it.‘) 15 make_shirt(size = ‘X‘ ) 16 make_shirt(size = ‘X‘,print_words = ‘‘Phyllis,Bye.‘‘) 17 18 def make_shirt2(size = "x", print_words2): # non-default argument follows default argument 19 ‘‘‘接收默认X码T恤‘‘‘ 20 print("Your " + size + " size T-shirt will be print" + print_words2) 21 22 23 make_shirt2(print_words2=‘I love Python.‘) 24 25 def make_shirt(print_words,size = ‘x‘,): #重点 默认形参必须放在后面, 26 """接收T恤的尺码和印刷字样""" 27 print(" Your T-shirt‘s size is " + size + ".") 28 print(print_words + ‘ will be print on it.‘) 29 make_shirt(print_words = ""Hello World"") 30 make_shirt(print_words = ‘‘Phyllis,Bye.‘‘) 31 32 def cities_in_countries(city, country="Japan"): # describe_city() 33 print(city + " is in " + country) 34 35 36 cities_in_countries("Osaka") 37 cities_in_countries("Tokyo") 38 cities_in_countries("Shanghai", country="China") 39 40 41 def get_formatted_name(first_name, last_name, middle_name=" "): 42 # print(first_name.title + middle_name + last_name.title) # 应先将形参储存至变量 43 if middle_name: 44 full_name = first_name + " " + middle_name + " " + last_name 45 else: 46 full_name = first_name + middle_name + last_name 47 return full_name.title() 48 49 50 goddess = get_formatted_name("phylls", "ryo") 51 print(goddess) 52 test = get_formatted_name("John", "Hooker", "Lee") 53 print(test) 54 55 # 练习8-6 56 def city_country(city, country): 57 """输出城市及其所属国家""" 58 print(city.title(), country.title()) 59 60 61 city_country("tokyo", "Japan") 62 """8-7 专辑 :编写一个名为make_album() 的函数,它创建一个描述音乐专辑的字典。这个函数应接受歌手的名字和专辑名,并返回一个包含这两项信息的字典。使 63 用这个函数创建三个表示不同专辑的字典,并打印每个返回的值,以核实字典正确地存储了专辑的信息。 64 给函数make_album() 添加一个可选形参,以便能够存储专辑包含的歌曲数。如果调用这个函数时指定了歌曲数,就将这个值添加到表示专辑的字典中。调用这个 65 函数,并至少在一次调用中指定专辑包含的歌曲数。 66 8-8 用户的专辑 :在为完成练习8-7编写的程序中,编写一个while 循环,让用户输入一个专辑的歌手和名称。获取这些信息后,使用它们来调用函 67 数make_album() ,并将创建的字典打印出来。在这个while 循环中,务必要提供退出途径。""" 68 def make_album(singer, album, songs=‘‘): 69 music_album = {‘singer‘: singer.title(), ‘album‘: album.title()} 70 if songs: 71 # music_album = {‘singer‘: singer, ‘album‘: album, ‘songs‘: int(songs)} 72 # 此处应使用为字典添加键值功能 字典定义应该且移到if语句之外 73 music_album[‘songs‘] = int(songs) #错把字典名music_album 打成函数名make_album 74 # else: # 多卵余 75 # music_album = {‘singer‘:singer.title(), ‘album‘:album.title()} 76 return music_album #不可以在此处使用.title() ‘dict‘ object has no attribute ‘title‘ 77 78 79 print(make_album(‘Jay Zhou‘, ‘Fantasy‘)) 80 print(make_album(‘Jacky Zhang‘,‘wake up dreaming‘,10)) 81 print(make_album(‘eason chen‘,‘cheerful on the fifth floor.‘,‘11‘)) 82 83 def make_album(singer, album, songs=‘‘): 84 music_album = {‘singer‘: singer.title(), ‘album‘: album.title()} 85 if songs: 86 music_album[‘songs‘] = int(songs) 87 return music_album 88 89 90 while True: 91 print(" Please tell me your favorite singer and his/her album.") 92 print("(enter ‘q‘ at any time to quit)") 93 94 singer = input(‘Sing‘s name: ‘) 95 if singer == ‘q‘: 96 break 97 album = input(‘His/Her album: ‘) 98 if album == ‘q‘: 99 break 100 print(make_album(singer,album)) 101 102 切片表示法[:] 创建列表的副本。在print_models.py中,如果不想清空未打印的设计列表,可像下面这样调用print_models() : 103 print_models(unprinted_designs[:], completed_models) 104 105 """练习8-9 106 8-9 魔术师 :创建一个包含魔术师名字的列表,并将其传递给一个名为show_magicians() 的函数,这个函数打印列表中每个魔术师的名字。 # 问题 107 8-10 #问题 了不起的魔术师 :在你为完成练习8-9而编写的程序中,编写一个名为make_great() 的函数,对魔术师列表进行修改,在每个魔术师的名字中都加入字样“the 108 Great”。调用函数show_magicians() ,确认魔术师列表确实变了。 109 8-11 不变的魔术师 :修改你为完成练习8-10而编写的程序,在调用函数make_great() 时,向它传递魔术师列表的副本。由于不想修改原始列表,请返回修改后的 110 列表,并将其存储到另一个列表中。分别使用这两个列表来调用show_magicians() ,确认一个列表包含的是原来的魔术师名字,而另一个列表包含的是添加了字 111 样“the Great”的魔术师名字。 112 """ 113 114 def show_magicians(magicians_names): 115 """Print magicians‘s names.""" 116 for name in magicians_names: 117 print(name.title()) 118 119 120 def make_great(magicians_names): 121 """Make magicians great.""" 122 while magicians_names: #应该在调用函数时使用副本 123 name_add = "the Great " + magicians_names.pop().title() 124 great_magicians.append(name_add) 125 126 magicians_names = ["phylls", "shiitakeimoto", "soso", "ergou", "erzi", "momoe"] 127 great_magicians = [] 128 129 make_great(magicians_names[:]) 130 print(magicians_names) 131 print(great_magicians)
以上是关于2.23的主要内容,如果未能解决你的问题,请参考以下文章