您好,登录后才能下订单哦!
这篇“怎么在Python函数中传递列表”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么在Python函数中传递列表”文章吧。
把列表传递给函数后, 函数就能直接访问列表中的内容咯。
假设有一组专家,我们想邀请他们参加研讨会。
def send_invitation(experts): '''发送邀请函''' for expert in experts: print(expert + ',您好,现邀请您参加 XX 研讨会...') experts = ['小明', '小红'] send_invitation(experts)
运行结果:
小明,您好,现邀请您参加 XX 研讨会…
黄莉莉,您好,现邀请您参加 XX 研讨会…
列表参数传递给函数后, 函数就可以对其进行修改。
注意:在函数中对列表所进行的任何修改都是永久性的。
def send_invitation(experts, informed): '''发送邀请函,并移动列表数据到【已通知】列表''' while experts: expert = experts.pop() print(expert + ',您好,现邀请您参加 XX 研讨会...') informed.append(expert) experts = ['小明', '小红'] # 专家列表 informed = [] # 已通知人员列表 print('执行前:experts=' + str(experts) + ',informed=' + str(informed)) send_invitation(experts, informed) print('执行后:experts=' + str(experts) + ',informed=' + str(informed))
运行结果:
执行前:experts=['小明', '小红'],informed=[]
小红,您好,现邀请您参加 XX 研讨会...
小明,您好,现邀请您参加 XX 研讨会...
执行后:experts=[],informed=['小红', '小明']
即使没有注释,那些具有描述性的函数名也能清晰地表达出函数所做的工作。
我们也可以在一个函数中调用另一个函数, 这样有助于将复杂的任务分解为一系列的步骤,让程序变得更具可读性。
有时候,我们并不想让函数修改传递进去的列表,
这时我们可以向函数传递列表的副本:
experts = ['小明', '小红'] # 专家列表 informed = [] # 已通知人员列表 print('执行前:experts=' + str(experts) + ',informed=' + str(informed)) send_invitation(experts[:], informed) print('执行后:experts=' + str(experts) + ',informed=' + str(informed))
运行结果:
执行前:experts=['小明', '小红'],informed=[]
小红,您好,现邀请您参加 XX 研讨会...
小明,您好,现邀请您参加 XX 研讨会...
执行后:experts=['小明', '小红'],informed=['小红', '小明']
虽然向函数传递列表的副本可以保留原始列表的内容,
但除非有充分的理由需要这样做。
因为让函数使用传递进行的列表可以避免花时间
在内存中创建副本,从而提高性能,这在处理大数据列表时尤其需要注意。
以上就是关于“怎么在Python函数中传递列表”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。