第八章
程序员文章站
2022-07-12 17:59:30
...
8-2 喜欢的图书 :编写一个名为favorite_book() 的函数,其中包含一个名为title 的形参。这个函数打印一条消息,如One of my favorite books is Alice in Wonderland 。调用这个函数,并将一本图书的名称作为实参传递给它
def favorite_book(title):
print("One of my favorite books is " + title.title())
favorite_book("Alice in Wonderland")
One of my favorite books is Alice In Wonderland
8-3 T恤:编写一个名为make_shirt() 的函数,它接受一个尺码以及要印到T恤上的字样。这个函数应打印一个句子,概要地说明T恤的尺码和字样。 使用位置实参调用这个函数来制作一件T恤;再使用关键字实参来调用这个函数。
def make_shirt(size,words):
print("size: " + str(size))
print("words: " + words)
make_shirt("M","Test")
make_shirt(size = "L",words = "I love Python")
size: M
words: Test
size: L
words: I love Python
8-4 大号T恤 :修改函数make_shirt() ,使其在默认情况下制作一件印有字样“I love Python”的大号T恤。调用这个函数来制作如下T恤:一件印有默认字样的大号T 恤、一件印有默认字样的中号T恤和一件印有其他字样的T恤(尺码无关紧要)。
def make_shirt(size = "L",words = "I love Python"):
print("size: " + str(size))
print("words: " + words)
make_shirt()
make_shirt(size = "M")
make_shirt(words = "Test")
size: L
words: I love Python
size: M
words: I love Python
size: L
words: Test
8-6 城市名 城市名 :编写一个名为city_country() 的函数,它接受城市的名称及其所属的国家。这个函数应返回一个格式类似于下面这样的字符串:
"Santiago, Chile"
至少使用三个城市-国家对调用这个函数,并打印它返回的值。
def city_country(city,country):
return city + ", " + country
print(city_country('Beijing','China'))
print(city_country('Tokyo','Japan'))
print(city_country('Newyork','England'))
Beijing, China
Tokyo, Japan
Newyork, England
8-11 不变的魔术师 :修改你为完成练习8-10而编写的程序,在调用函数make_great() 时,向它传递魔术师列表的副本。由于不想修改原始列表,请返回修改后的 列表,并将其存储到另一个列表中。分别使用这两个列表来调用show_magicians(),确认一个列表包含的是原来的魔术师名字,而另一个列表包含的是添加了字样“the Great”的魔术师名字。
def show_magicians(magicians):
for magician in magicians:
print(magician,end = " ")
print()
def make_great(magicians):
result = []
for magician in magicians:
result.append( "the Great " + magician)
return result
magicians = ['Alice','Bob','Rum']
show_magicians(magicians)
great_magicians = make_great(magicians[:])
show_magicians(great_magicians)
Alice Bob Rum
the Great Alice the Great Bob the Great Rum
8-14 汽车 :编写一个函数,将一辆汽车的信息存储在一个字典中。这个函数总是接受制造商和型号,还接受任意数量的关键字实参。这样调用这个函数:提供必不可 少的信息,以及两个名称—值对,如颜色和选装配件。这个函数必须能够像下面这样进行调用:
car = make_car('subaru', 'outback', color='blue', tow_package=True)
def make_car(maker,model,**profile):
dic = {}
dic['maker'] = maker
dic['model'] = model
for k,v in profile.items():
dic[k] = v
return dic
car = make_car('subaru', 'outback', color='blue', tow_package=True)
print(car)
{'maker': 'subaru', 'model': 'outback', 'color': 'blue', 'tow_package': True}