从零开始入门python第一讲(1)

这一章我们系统地来学习【函数】这个概念

首先来看定义

可以重用,并且可以实现特定的功能

定义函数要按照固定的格式,形如:

def是定义的标准表述

参数和return都是可有可无的,关于参数和return怎么理解,我们参照下面的表述

重要的比较难理解的就是最后一句话,要着重理解形参和实参在程序中的作用,另外函数输出的结果如果是特定的值或者数据的话需要用return语句来指定把哪个变量作为函数的输出,举个栗子

在这个阶乘的函数中,n就是形参,10就是实参,fact(10)就是函数调用的语句,return表示这个函数的输出就是s的值,关于实参和形参如何传递,计算结果如何传递,看下面这张图

接着通过两个示例学习一下【可选参数】和【可变参数】

在可选参数中,可选的参数在调用时可加可不加,不加的时候会有一个默认的值。

可变参数的数量不确定,可0个可多个

接着,我们来通过一个示例理解一下什么是函数的返回值

在上面例子里,函数的返回值是三个数值,并且这三个数值可以赋值给三个变量。

接着我们来理解什么是【全局变量】和【局部变量】

从字面意思理解,全局变量就是在整个程序中都发挥作用的变量,而局部变量就是在部分程序代码中发挥作用的变量,我们举个栗子:

在上面这个例子中,n和s不在函数fact()中和在fact()中时是完全不同的定义,在函数中时局部变量,在函数外是全局变量

而如果我们想把函数体中的变量也变成全局变量的话,那就要加上特别的声明:global

例如:

此外,组合数据类型默认是全局变量,如果在函数体内新建的话就变成局部变量了,还有lamda函数的使用,是函数定义的另一种写法,不是很重要,这里只提一下,不做过多介绍

接下来我们来接触今天的程序设计实例:【七段数码管的绘制】

先来看题:用turtle库在画布上画出当前时间,类似于下面这样的形式:

那么这个问题应该分为几个步骤来实现呢?

首先,我们要在步骤1里实现单个数字的绘制

其次,我们要在步骤2里实现一串数字的绘制

最后,我们再根据时间来输出最后的结果

按照这个思路的话,应该是第三个功能调用第二个功能,第二个功能要调用第一个功能

首先来实现第一个功能,实现单个数字的绘制

思路如上所示,我们将绘制单个数字转换成为【七段数码管】的显示问题

import turtle
def drawLine(draw):   #绘制单段数码管turtle.pendown() if draw else turtle.penup()turtle.fd(40)turtle.right(90)
def drawDigit(digit): #根据数字绘制七段数码管drawLine(True) if digit in [2,3,4,5,6,8


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部