python 库函数ppt_《Python电子教案5-1 函数和代码复用》.ppt

一个程序中的变量包括两类:全局变量和局部变量。全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效。局部变量指在函数内部使用的变量,仅在函数内部有效,当函数退出时变量将不存在。例子如下。 函数对变量的作用 函数对变量的作用 这个例子说明,当函数执行完退出后,其内部变量将被释放。如果函数内部使用了全局变量呢?例子如下。 函数对变量的作用 函数func()内部使用了变量n,并且将变量参数b赋值给变量n,为何n值没有改变?函数func()有自己的内存空间,它将n=b语句理解为生成一个局部变量n,并将参数b赋值给它,此时func()函数没有将n当作全局变量。所以,函数退出后,局部变量n被释放,全局变量n的值没有修改。 函数对变量的作用 如果希望让func()函数将n当作全局变量,需要在变量n使用前显式声明该变量为全局变量,代码如下。 函数对变量的作用 如果此时的全局变量不是整数n,而是列表类型ls,会怎么样呢?理解如下代码。 函数对变量的作用 请读者注意,奇迹产生了,全局列表变量在函数func()调用后竟然发生了改变! 列表等组合数据类型由于操作多个数据,所以它们在使用中有创建和引用的分别。当列表变量被方括号([],无论是否为空)赋值时,这个列表才被真实创建,否则只是对之前创建列表的一次引用。 函数对变量的作用 上述代码func()函数的ls.append(b)语句执行时需要一个真实创建过的列表,此时func()函数专属的内存空间中没有已经创建过且名称为ls的列表,因此,func()函数进一步去寻找全局内存空间,自动关联全局ls列表,并修改其内容。当func()函数退出后,全局ls列表中的内容被修改。简单说,对于列表类型,函数可以直接使用全局列表而不需要采用global进行声明。 函数对变量的作用 如果func()函数内部存在一个真实创建过且名称为ls的列表,则func()函数将操作该列表而不会修改全局变量,例子如下。 函数对变量的作用 总结一下,Python函数对变量的作用遵守如下原则: 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放,如有全局同名变量,其值不变; 简单数据类型变量在用global保留字声明后,作为全局变量使用,函数退出后该变量保留且值被函数改变; 函数对变量的作用 对于组合数据类型的全局变量,如果在函数内部没有被真实创建同名变量,则函数内部可以直接使用并修改全局变量的值; 如果函数内部真实创建了组合数据类型变量,无论是否有同名全局变量,函数仅对局部变量进行操作,函数退出后局部变量被释放,全局变量值不变。 函数对变量的作用 datetime库的使用 以不同格式显示日期和时间是程序中最常用到的功能。Python提供了一个处理时间的标准函数库datetime,它提供了一系列由简单到复杂的时间处理方法。datetime库可以从系统中获得时间,并以用户选择的格式输出。 datetime库以格林威治时间为基础,每天由3600*24秒精准定义。该库包括两个常量:datetime.MINYEAR与datetime.MAXYEAR,分别表示datetime所能表示的最小、最大年份,值分别为1与9999。 datetime库概述 datetime库以类的方式提供多种日期和时间表达方式: datetime.date:日期表示类,可以表示年、月、日等。 datetime.time:时间表示类,可以表示小时、分钟、秒、毫秒等 datetime.datetime:日期和时间表示的类,功能覆盖date和time datetime.timedelta:时间间隔有关的类。 datetime.tzinfo:与时区有关的信息表示类。 datetime库概述 由于datetime.datetime类表达形式最为丰富,主要介绍这个类的使用。使用datetime类需要用import保留字,具体引用datetime类的方式如下: from datetime import datetime datetime库概述 函数的基本使用 函数是一段具有特定功能的、可重用的语句组,用函数名来表示并通过函数名完成功能调用。函数也可以看作一段具有名字的子程序,可以在需要的地方调用执行,不需要在每个执行地方重复编写这些语句。每次使用函数可以提供不同的参数作为输入,以实现对不同数据的处理;函数执行后,还可以反馈相应的结果。 函数能够完成特定功能,与黑盒类似,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。严格说,函数是一种功能抽象。 函数的定义 有些函数是用户自己编写的,称为自定义函数;Python安装包也自带了一些函数和方法,包括Python内置的函数(如abs()、e

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值