用到的知识点:
1、函数可以传递列表
2、函数可以修改列表
3、如果不想用函数修改列表,则可以用function_name(list_name[:]) 创建列表的副本,对列表副本进行操作。
不变的魔术师:修改你为完成练习 8-10 而编写的程序,在调用函数make_great()时,向它传递魔术师列表的副本。由于不想修改原始列表,请返回修改后的列表,并将其存储到另一个列表中。分别使用这两个列表来调用 show_magicians(),确认一个列表包含的是原来的魔术师名字,而另一个列表包含的是添加了字样“the Great”的魔术师名字。
def show_magicians(names): for name in names: print(name.title()) def make_great(names): for i in range(len(great_names)): great_names[i]='The great '+great_names[i] return great_names magicians_names = ['hong tao','xiao weihong','hong yumi','hong yuchan'] great_names=magicians_names[:] make_great(great_names) show_magicians(magicians_names) show_magicians(great_names)