Python程序设计基础(8)----函数(2)

本文介绍了Python编程中的核心概念,包括如何定义和使用函数来处理列表,如问候用户或管理3D打印任务。函数可以修改传入的列表,并允许接受任意数量的位置和关键字参数,方便制作比萨饼等场景。此外,还探讨了如何通过导入模块来组织和重用代码,简化程序并提高可读性。示例中展示了如何导入和使用模块中的函数,以及如何给模块指定别名以简化引用。
摘要由CSDN通过智能技术生成

8.4、传递列表
(1).你经常会发现,向函数传递列表很有用,其中包含的可能是名字、数或更复杂的对象(如字典)。将列表传递给函数后,函数就能直接访问其内容。下面使用函数来提高处理列表的效率假设有一个用户列表,我们要问候其中的每位用户。下面的示例将包含名字的列表传递给一个名为 greet_users()的函数,这个函数问候列表中的每个人:
在这里插入图片描述
输出:
在这里插入图片描述
(2).在函数中修改列表
将列表传递给函数后,函数就可对其进行修改。在函数中对这个列表所做的任何修改都是永久性的,这让你能够高效地处理大量数据。来看一家为用户提交的设计制作3D打印模型的公司。需要打印的设计存储在一个列表中,打印后将移到另一个列表中。下面是在不使用函数的情况下模拟这个过程的代码:
在这里插入图片描述
输出:
在这里插入图片描述
8.5、传递任意数量的实参
有时候,我们不知道函数需要接受多少个实参,好在Python允许函数从调用语句中收集任意数量的实参。
下面是一个制作pizza的函数,由于我们通常不清楚顾客需要什么样的pizza和调料因此我们需要使用到形参和实参,例如:
在这里插入图片描述
输出:
在这里插入图片描述
(1)结合使用位置实参和任意数量实参
如果我们还需要显示pizza的尺寸,那么我们可以输入以下程序:
在这里插入图片描述
输出:
在这里插入图片描述
(2)使用任意数量的关键字实参
有时候,需要接受任意数量的实参,但预先不知道传递给函数的会是什么样的信息。在这种调用语句提供了多少就接受多少。一个情况下,可将函数编写成能够接受任意数量的键值对这样的示例是创建用户简介:你知道将收到有关用户的信息,但不确定会是什么样的信息。在下面的示例中,函数 build_profile()接受名和姓,还接受任意数量的关键字实参:
在这里插入图片描述
输出:
在这里插入图片描述
8.6、将函数存储在模块中
使用函数的优点之一是可将代码块与主程序分离。通过给函数指定描述性名称,可让主程序容易理解得多。你还可以更进一步,将函数存储在称为模块的独立文件中,再将模块导入到主程序中。 import语句允许在当前运行的程序文件中使用模块中的代码。通过将函数存储在独立的文件中,可隐藏程序代码的细节,将重点放在程序的高层逻辑上。这还能让你在众多不同的程序中重用函数。将函数存储在独立文件中后,可与其他程序员共享这些文件而不是整个程序。知道如何导入函数还能让你使用其他程序员编写的函数库。导入模块的方法有多种,下面对每种进行简要的介绍。
(1)导入整块模块
要让函数是可导入的,首先得创建块。模块是扩展名为.py的文件,包含要导入到程序中的代码。下面来创造一个包含函数make_pizza()的模块。
在这里插入图片描述
接下来,在pizza.py文件中创建一个making_pizzas.py的文件,making_pizzas.py代码如下:
在这里插入图片描述
这里我们使用了import函数导入了第一次的pizza.py文件,可以得到以下输出结果:
在这里插入图片描述
(2)使用as给模块指定别名
将函数名简化导入会介绍软件工程师很多时间,这时我们会有更多时间关注代码本身工作,从而减少出错。笔者还是拿pizza的例子举个例子:
在这里插入图片描述
我们将pizza简化为p,这时我们在下面引用时就可以改为p了,输出结果是一样的,输出:
在这里插入图片描述

总结:在本章中,我们学习了:如何编写函数,以及如何传递实参,让函数能够访问完成其工作所需的信息;如何使用位置实参和关键字实参,以及如何接受任意数量的实参;显示输出的函数和返回值的函数;如何将函数同列表、字典、if语句和 while循环结合起来使用;如何将函数存储在称为模块的独立文件中,让程序文件更简单、更易于理解。记得及时理解和复习哦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值