Python入门教程PPT课件:第6章 函数_PPT

合集下载

python学习课件(共73张PPT)

python学习课件(共73张PPT)
• ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非 常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功, 究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错 误(的确如此,Python 与其它的语言如C、C++和Java结合的非常好)。同 时,他还想实现在 ABC 中闪现过但未曾实现的东西。就这样,Python在 Guido手中诞生了。
Python语言特点-可扩展、动态性
可扩展性
• Python是采用C开发的语言,因此可以使用C扩展Python ,可以给Python添加新的模块、新的类。同时Python 可以嵌入C、C++语言开发项目中,使程序具备脚本 语言的特性。
动态性 • Python与JavaScript、PHP、Perl等语言类似,它不需要
• Python语言具有很强的面向对象特性,而且简化了面向 对象的实现,它消除了保护类型、抽象类、接口等面向 对象的元素,使得面向对象的概念更容易理解。
Python语言特点-内置数据结构
• Python提供了一些内置的数据结构,这些数据结构实现 了类似Java中集合类的功能。内置数据结构的出现简化了 程序设计。
• 工具2to3( • )几乎能将任何Python 2程序自动转换为等价的Python 3程序。
2.Python 基本语法
Python的编码规范
1、命名规则
• Python语言有一套自己的命名规则。命名规则并不 是语法规定,只是一种习惯用法。
(1) 变量名、模块名、包名
• 通常采用小写,可使用下划线。 • 例如:
rulemodule.py #模块名,即文件名 _rule=’rule information’ #_rule变量名,通常前缀有一个

Python程序设计第6章函数的设计和使用(第8次课)ppt课件

Python程序设计第6章函数的设计和使用(第8次课)ppt课件
函数定义格式如下:
def 函数名([参数]): ……(函数体)
【例6-1】 定义一个输出函数,打印出Hello World!。
框图:
开始 调用函数sayHello()
结束
程序:
#Exp6_1.py def sayHello( ): #函数定义
print 'Hello World! ' #函数体
#主程序 sayHello( ) #函数调用
程序运行结果: x is 50 changed local x to 2
print 'value of x is', x
# Ea=3.14*r*r perimeter=2*3.14*r print '半径为',r,'的圆面积为:', area print '半径为',r,'的圆周长为:', perimeter #主程序 circle(2) #函数调用 circle(3) #函数调用 circle(4) #函数调用
计算机编程导论
课程建设组 编著 2014.10
第6章 函数的设计和使用
1.问题的引入 2. 函数基础知识
6.1 问题的引入
【问题6-1】计算三个圆的面积和周长,这三个圆的半 径分别为2,3,4。 分析:按照已学过的知识,解决该问题的程序如下:
#Ques6_1.py a=2 area_a=3.14*a*a perimeter_a=3.14*2*a print '半径为2的圆的面积为:', area_a print '半径为2的圆的周长为:', perimeter_a b=3 area_b=3.14*b*b perimeter_b=3.14*2*b print '半径为3的圆的面积为:', area_b print '半径为3的圆的周长为:', perimeter_b

最新Python基础6ppt课件

最新Python基础6ppt课件

边框
所有的widget都有一个边框。 边框包括3D的relief(浮雕)效果和Focus
Highlight(焦点高亮)区域。 Relief option用来表示如何绘制一个widget
的边框,可以是SUNKEN RAISED, GROOVE RIDGE和FLAT borderwidth或 者bd option表示widget边框的大小,一般 为2或1。太大不好看。
Tkinter
对于较大程序,一般写到一个类中。
Widget配置
Tk中的每一个widget都有很多option,通过 改变这些option可以改变widget的外观。典 型的option有控制显示的内容,颜色,大小, 事件处理函数等等,Tkinter提供了统一界 面用于处理所有的option。
Highlightthickness 表示Focus Highlight Region的宽度,一般为1或2.
边框
from Tkinter import * bd = range(1,9,3) t = [ "border = " + str(k) for k in bd ] relief= [ RAISED,
Pack管理器
Cavity(空间):master widget上的空间, 表示分配空间一部分slave widget之后, master widget还剩下的空间,用于分配给 其它还没有摆好的slave widget。
Parcel(包裹):从cavity中分配出一个空 间,用于摆放一个slave widget。
Tkinter
Option?所有的Widget都有很多options,包 括fg(前景色),bg(背景色),font(字 体),command(事件处理函数),text (内容)等等。

Python课件PPT:第6章 函数

Python课件PPT:第6章 函数

6.9.2 利用递归函数解决汉诺塔问题
6.9.3 防止栈溢出
使用递归函数需要注意防止栈溢出。在计算 机中,函数调用是通过栈(stack)这种数 据结构实现的,每当进入一个函数调用,栈 就会加一层栈帧,每当函数返回,栈就会减 一层栈帧。由于栈的大小不是无限的,所以 ,递归调用的次数过多,会导致栈溢出。
6.10 匿名函数
所谓匿名,即不再使用def语句这样标准的形式定义一 个函数。Python使用lambda创建一个匿名函数。
下面举个简单的例子。定义一个返回参数之和的函数。 def f(x,y): return x+y 用户的函数只有一个表达式,就可以使用lambda运算
符来定义这个函数。 f = lambda x, y: x + y
6.6 形参和实参
函数的参数分为形参和实参两种。形参出现 在函数定义中,在整个函数体内都可以使用 ,离开该函数则不能使用;实参再调用函数 时传入。
1. 形参与实参的概念 2. 参数的功能 3. 形参和实参的特点:
6.7 变量作用域
在函数之外定义的变量属于全局变量,用户 可以在函数内使用全局变量。例如:
>>>m = f1(-100,abs)
>>>m()
#需要对m()调用才能得到求绝对值的结果
6.9 递归函数
6.9.1 使用递归函数 6.9.2 利用递归函数解决汉诺塔问题 6.9.3 防止栈溢出
6.9.1 使用递归函数
递归是指在函数的执行过程中再次对自己进 行调用。例如:
def f() { y=f(); return y; }
6.4.2 关键字参数
用户可以直接设置参数的名称与其默认值,这种类型的参数属于 关键字参数。

《Python语言》电子课件 第六章

《Python语言》电子课件 第六章

good数则按照给定格式输出,输出使用格式化操作,使输出
更加方便。
1 for i in range(1000, 10000):
2
a = i / 1000
3
b = i / 100 % 10
4
c = i % 100 / 10
5
d = i % 10
6
if a ** 4 + b ** 4 + c ** 4 + d ** 4 == i:
17
6.1.3 字符串模板
字符串格式化操作符是Python处理这类问题的主要手段。然 而它也不是完美的,其中的一个缺点是不够直观,即使是现 在使用字典形式转换的程序员也会偶尔出现遗漏转换类型符 号的错误,而字符串模板的优势是不用去记住所有的相关细 节,就可以完成对原有参数的直接替换。
新式的字符串Template对象存在string模块中,新式的字符 串Template对象使用美元符号“$”定义待替换的参数,使用 substitute()方法和safe_substitute()方法进行参数替换。 substitute()方法更为严谨,在substitute()缺少的情况下 它会报一个KeyError的异常出来;而safe_substitute()在缺 少key时,直接原封不动的把参数字符串显示出来。
re模块正则表达式方法 正则表达式特殊符号
4
6.1 字符串操作
字符串操作是编程语言中的一项基本操作,比如通过切片操 作得到字符串的子序列,再比如字符串在输出时需要格式输 出。 Python语言所提供的字符串操作方法将大大简化编程复杂度 ,缩短开发周期。
5
6.1.1 切片操作
字符串的切片操作就是在字符串中按规则地提取一段字符串 ,达到简化字符串的目的。Python语言中切片操作主要有两 种形式:

Python函数介绍课件

Python函数介绍课件
04 可变参数:使用*args或**kwargs来接收任意数量 的参数,可以方便地处理参数个数可变的情况
参数默认值
01
什么是参数默认值:在函数定 义时,为参数指定一个默认值, 当调用函数时,如果没有提供 该参数的值,则使用默认值。
02
默认值的作用:简化函数调 用,提高代码可读性和可维 护性。
03
如何设置参数默认值:在函数 定义时,在参数名后使用等号 (=)为参数指定默认值。
谢谢
4
形参和实参的类型可以不同,但必须兼容
5
形参和实参可以传递任意类型的数据,包括数值、字符串、列表、字典等
参数传递方式
01 值传递:将实参的值传递给形参,形参的改变不影 响实参
02 引用传递:将实参的地址传递给形参,形参的改变 会影响实参
03 默认参数:在定义函数时为参数指定默认值,调用 函数时可以省略该参数
函数的嵌套
01 概念:在一个函数内部定义并 调用另一个函数
02 作用:简化代码,提高代码可 读性和可维护性
03 示例:计算阶乘的函数中嵌套 计算每个数的阶乘
04 注意事项:避免嵌套层次过深, 可能导致代码难以理解和调试
递归函数的定义
01
递归函数是一种函数,它直接或间接 02
递归函数通常用于解决可以分解为更

函数的作用
01
02
03
04
简化代码:将重复 代码封装成函数, 提高代码可读性和
可维护性
提高代码重用性: 将可重用的代码封 装成函数,方便在
其他地方调用
提高代码模块化: 将相关功能封装成 函数,便于模块化
编程
提高代码执行效率: 通过函数调用,减 少重复计算,提高

第6章__Python函数

第6章__Python函数
如果想使用函数返回值,则有两种用法
用变量接收返回值,如 x = f(3) print 2 + x * 4 直接用在表达式中,如 print 2 + f(3) * 4
函数中定义的变量是局部的:即作用域是函 数体.
函数的形参可视为局部变量,只不过是在调用 时 才赋值.
24
局部变量和全局变量
在一个函数中定义的变量一般只能在该函 数内部使用,这些只能在程序的特定部分 使用的变量我们称之为局部变量;
在一个文件顶部定义的变量可以供该文件 中的任何函数调用,这些可以为整个程序 所使用的变量称为全局变量。
def treetop(ch): print " %s" % (ch) print " %s" % (3*ch) print " %s" % (5*ch) print "%s" % (7*ch)
def star_treetop(): treetop('*') treetop('*')
def caret_treetop(): treetop('^') treetop('^‘)
x =0 f() g()
30
提纲
函数的定义 函数的命名规则 函数的作用域 函数的参数 函数的返回值 常用函数
31
函数的参数
在一个函数中对参数名赋值不影响调用者 在一个函数中改变一个可变的对象参数会影
响调用者,如列表,字典,元组等。 参数是对象指针,无需定义传递的对象类型
def test(a,b): return (a+b)
def treetop(): print " *" print " ***" print " *****" print "*******"

Python语言PPT-第6章函数

Python语言PPT-第6章函数

*** 函数的参数和返回值
第六章 函数
函数的参数就是使得函数个性化的一个实例。代码如下所示:
>>> def MyFirstFunction(name_city): print(‘我喜欢的城市:’ + name_city)
运行结果如下:
>>> MyFirstFunction('南京') 我喜欢的城市:南京
PER_PRICE_1 = float(input('请输入单价:')) NUMBER_1 = float(input('请输入斤数:')) SUM_PRICE_1 = foodsprice(PER_PRICE_1,NUMBER_1) print('蔬菜的价格是:',SUM_PRICE_1) print('局部变量sum_price的值:',sum_price)
*** 函数的概述
第六章 函数
代码运行结果如下:
请输入单价:12 请输入斤数:1.56 蔬菜的价格是: 18.72 Traceback (most recent call last): File "G:/6_1_3.py", line 9, in <module> print('局部变量sum_price的值: ',sum_price) NameError: name 'sum_price' is not defined
*** 函数的参数和返回值
第六章 函数
*** 可变参数
可变参数又称收集参数,是将一个元组赋值给可变参数。如果可变参数后 面还有其它参数,在参数传递时要把可变参数后的参数作为关键字参数来 赋值,或者在定义函数参数时要给它赋默认值,否则会出错。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

局部 变量
1
全局 变量
2
匿名函数(lambda)
函数
[ 概念]
简单理解:函数就是可以完 成某项工作的代码块。
返回值 参数传递 函数的创建和调用
变量的作用域 匿名函数(lambda)
函数的创建和调用
1 创建函数 2 调用函数
不写()
def functionname([parameterlist]): ['''comments'''] [functionbody]
放在所有参数的最后
def functionname(…,[parameter1 = defaultvalue1]): [fuห้องสมุดไป่ตู้ctionbody]
返回值
None
return [value]
变量的作用域
[ 概念]
变量的作用域是指程序代码能够 访问该变量的区域,如果超出该区域, 再访问时就会出现错误。
return
()
functionname([parametersvalue])
参数传递
了解形 式参数 和实际
参数
1
关键 字参

3
位置 参数
2
为参数 设置默
认值
4
可变 参数
5
[ 概念]
位置参数是必须按照定义时
的个数和顺序进行参数传递,也
称必备参数。
[ 概念]
关键字参数是指使用形式参 数的名字来确定输入的参数值。
相关文档
最新文档