8.4传递列表
你经常会发现,向函数传递列表很有用,这种列表包括的可能是名字、数字或更复杂的对象(如字典)。将列表传递给函数后,函数就能直接访问其内容。
8.4.1在函数中修改列表
将列表传递给函数后,函数就可对其进行修改。在函数中对这个列表所做的任何修改都是永久性的,这让你能够高效地处理大量的数据。用到了.pop()和.append()。
每个函数都应只负责一项具体的工作。第一个函数打印每个设计,而第二个显示打印好的模型,这优于一个函数从事两项工作。如果编写函数发现它执行的任务太多,请尝试将这些代码划分到两个函数中。总是可以在一个函数中调用另一个函数,这有助于将复杂的任务划分成一系列的步骤。
8.4.2禁止函数修改列表
切片法[:]创建列表的副本。
虽然向函数传递列表的副本可以保留原始列表的内容。但除非有充分的理由需要传递副本,否则还是应该将原始列表传递给函数。让函数使用现场列表可以避免花时间和内存创建副本,从而提供效率,在处理大型列表时尤其如此。