向函数传递列表
函数可以提高处理列表的效率
例如:
def greet_user(names):
"""向列表每位用户发出简单的问候"""
for name in names:
msg = f"Hello,{name.title()}"
print(msg)
在函数中修改列表
在函数中修改列表是永久性的,这可以高效的处理大量数据。
例如:打印列表1的数据,将打印过的数据转移到列表2
1、非函数实现
lis1 = ['windows','mac','linux']
lis2 = []
# 模拟打印过程
while lis1:
pri = lis1.pop()
print(f'数据{pri}已打印!')
lis2.append(pri)
# 显示打印好的数据
print("\n以下数据已打印:")
for lis in lis2:
print(lis.title())
print(lis1)
print(lis2)
2、函数实现
# 处理打印设计的工作
def print_models(unprinted,completed):
while unprinted:
current_design = unprinted.pop()
print(f"数据{current_design}正在打印!")
completed.append(current_design)
# 概述打印了哪些设计
def show_completed(completed):
print("\n以下数据已经打印好了:")
for n in completed:
print(n)
# 列表
unprinted = ['windows','mac','linux']
completed = []
用函数来实现功能的话,主程序更容易理解,并且这个程序更容易扩展和维护。
禁止函数修改列表
有时候,需要禁止函数修改列表,我们可以向函数传递列表的副本而非原件。
利用切片表示法[:]创建列表的副本:
function_name(list_name[:])
用列表副本调用刚刚那个函数
print_models(unprinted[:],completed)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/122887.html