8-11 不变的魔术师:修改你为完成练习8-10 而编写的程序,在调用函数
make_great()时,向它传递魔术师列表的副本。由于不想修改原始列表,请返回修改后
的列表,并将其存储到另一个列表中。分别使用这两个列表来调用show_magicians(),
确认一个列表包含的是原来的魔术师名字,而另一个列表包含的是添加了字样“the
Great”的魔术师名字。
names=['Jane','Eric','Mike']
def show_names(names):
for name in names:
print(name)
show_names(names) """显示原来的列表"""
def make_great(names):
i=0
while i<len(names):
names[i]='the Great '+names[i]
i+=1
return names """返回一个修改后的列表值"""
changed_names=make_great(names[:])"""修改原表的副本,并传递给一个新表"""
show_names(changed_names)"""显示修改后的列表"""
show_names(names)"""原来的表没有因为修改而改变,因为修改的是原表的副本"""