python 禁止函数修改列表的实现方法
程序员文章站
2024-02-29 11:26:10
有时候,需要禁止函数修改列表。例如要对裂变进行修改操作,也要保留原来的未打印的设计列表,以供备案。为解决这个问题,可向函数传递列表的副本而不是原件;这样函数所做的任何修改都...
有时候,需要禁止函数修改列表。例如要对裂变进行修改操作,也要保留原来的未打印的设计列表,以供备案。为解决这个问题,可向函数传递列表的副本而不是原件;这样函数所做的任何修改都只影响副本,而丝毫不影响原件。
function_name(list_name[:])
8-9 魔术师 魔术师 :创建一个包含魔术师名字的列表,并将其传递给一个名为show_magicians() 的函数,这个函数打印列表中每个魔术师的名字。 8-10 了不起的魔术师 了不起的魔术师 :在你为完成练习
8-9编写一个名为make_great() 的函数,对魔术师列表进行修改,在每个魔术师的名字中都加入字样“the Great”。调用函数show_magicians() ,确认魔术师列表确实变了。
8-11 不变的魔术师 不变的魔术师 :修改你为完成练习8-10而编写的程序,在调用函数make_great() 时,向它传递魔术师列表的副本。由于不想修改原始列表,请返回修改后的 列表,并将其存储到另一个列表中。分别使用这两个列表来调用show_magicians() ,确认一个列表包含的是原来的魔术师名字,而另一个列表包含的是添加了字 样“the Great”的魔术师名字。
def make_great(magicians,new_magicians): #对列表修改的函数 while magicians: current_magician = magicians.pop() #删除原列表中的元素 current_magician = "The Great " + current_magician new_magicians.append(current_magician) def show_magicians(new_magicians): for magician in new_magicians: #便利所有的magicians中的元素 print(magician) magicians = ['fake','ppd','moon'] new_magicians = [] make_great(magicians[:],new_magicians)#调用函数make_great 传递magicians[]副表magicians[:] show_magicians(new_magicians)#输出新表 show_magicians(magicians)#输入原表
执行结果:
The Great moon The Great ppd The Great fake fake ppd moon
以上这篇python 禁止函数修改列表的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
推荐阅读
-
python 禁止函数修改列表的实现方法
-
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
-
Python中列表list以及list与数组array的相互转换实现方法
-
Python下的Softmax回归函数的实现方法(推荐)
-
Python下的Softmax回归函数的实现方法(推荐)
-
Yii2 GridView实现列表页直接修改数据的方法,yii2gridview_PHP教程
-
Yii2 GridView实现列表页直接修改数据的方法,yii2gridview
-
Python实现判断给定列表是否有重复元素的方法
-
python实现在遍历列表时,直接对dict元素增加字段的方法
-
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用