python函数编程序_初始Python函数编程与代码的可复用性

前面我们写的Python程序代码都没有涉及到Python函数,所有的代码都被顺序安排在一起,程序的执行过程也是顺序执行。

下面的代码是计算自然数10以内的累加和:

e61190ef76c6a7eff3d45ab405383f55f1de66fd.jpeg?token=2b398d88a3a9b36461e2bc603f588b8b&s=C89AEC1A1B627D265EF594DA000050B2

代码声明了变量sum并初始化为零,然后连续9条语句求自然数1至自然数9的累加和,最后输出sum变量。上面的程序代码和程序的执行结果都没有问题,但这不是最好的编程方式。因为上面代码的重复语句太多,代码看上去也不够简洁,需要使用更好的方法改变代码结构,避免编写大量的重复语句。

使用for循环语句避免重复代码的编写:

d62a6059252dd42a69a1bd0efbf9cbb1c8eab836.jpeg?token=ecdf3e562de93fc0215731058b7840e2&s=6CBEAC1A97207D035C5D05DE000010B3

上面的程序使用for循环语句求自然数10以内的累加和,程序代码看上去简洁多了,也没有了重复语句。这是应用Python的循环语句改变了代码的结构,提高了代码的复用性。

虽然使用循环语句可以解决一些代码语句重复的问题,但是不能解决功能性代码重复的问题。看下面的程序代码:

d53f8794a4c27d1e20d4561ee3173d6adfc43845.jpeg?token=0400da28f7aa396f425497a654c18277&s=28A6AC1A15D86DC2504C64DE000050B2

上面的程序代码完成两个功能:一个功能是求自然数10以内的累加和并输出;第二个功能是求自然数20以内的累加和并输出。这两个功能相同,代码也几乎完全相同,只是循环次数不同,这种情况就属于功能性重复,循环可以解决代码重复的问题,但解决不了功能性重复的问题。

我们可以设想一下,在上面的程序代码中,如果我们把求自然数累加和的代码单独编写为一个代码块,自然数作为代码块的一个参数传入进去,该代码块对传入的自然数求累加和,并把求和结果返回给调用这个代码块的语句,这样就解决了程序中功能性重复的问题。

在Python语言中,Python提供了函数用来解决类似上面功能性重复的问题,其实函数的作用远不止于解决功能性重复的问题,函数是对程序逻辑进行结构化或过程化的一种编程方法,它可以将能够完成独立功能的代码块封装成易于管理的函数,这些函数可以被程序中的其它语句调用,而调用者可以把函数看成黑盒,不用考虑函数的内部结构和特性,只需传入参数和接收返回值就可以了。

在Python语言中,函数分为三部分:第一部分是函数声明,函数声明占一行语句,声明语句开头使用def关键字,在def关键字后面空格后紧跟函数的名称,函数名称后面是一对小括号,括号内是需要传入的参数,参数可以为空;第二部分是函数体,函数体可以占多行语句,函数体内包括函数注释和代码;第三部分是返回语句,如果函数没有返回值可以省略第返回语句。下图是Python函数结构图。

8435e5dde71190efbee09d5336d90d12fcfa606e.jpeg?token=4e9b4700e237eb13e9b33380a8cfb008&s=5AAA3C638B604D015E5DA1DA0000C0B1图 1 Python函数结构图

在Python函数结构图中,“functionname”表示函数的名称,“parameters”表示传入函数的参数,多个参数之间使用英文逗号分隔, “函数_文档字符串”是函数的注释文档,主要给出函数的功能、参数说明等信息(注释文档可以省略),“function_suite”是函数的代码,“expression”是返回的表达式或数据。

我们了解了函数结构后,就可以使用函数来解决上面程序中求自然数累加和功能重复的问题。

c2fdfc039245d68807a6f5865d00ed1ad31b24b7.jpeg?token=66a827cefc3eb3399309132e7c7507ca&s=ACAEAD1A8F884C431EDD51D2000090B1

上面的程序代码就比前边的程序代码简洁强大多了,它可以求任意自然数以内的累加和,而且编写的代码量也很少。程序定义了函数summation,该函数完成求给定自然数以内的累加和功能,自然数由函数的参数number指定。代码语句调用函数时,直接写上函数名称即可,函数名称后面是一对小括号,需要传入的参数放在小括号内。因为summation函数返回传入自然数的累加和,因此print语句输出了函数的返回值。

现在我们已经初步掌握了Python函数的使用,后面我们会深入讨论函数的参数。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值