day 2 函数的嵌套
1.函数的嵌套 百度百科


2.产品如何运作

3.应用
1)版本1:打印1条线
#1.定义函数
def print_line():
print("-"*50) #2.调用函数
print_line()

2)版本2:打印5条线
#1.定义函数
def print_5_lines():
print("-"*50)
print("-"*50)
print("-"*50)
print("-"*50)
print("-"*50) #2.调用函数
print_5_lines()

3)版本3:嵌套应用
#1.定义函数
def print_line():
print("-"*50) def print_5_lines():
i = 0
while i <= 5:
print_line() #调用函数1
i += 1 #2.调用函数
print_5_lines()
4.作业
要求 :
从键盘获取3个数字
打印3个数的和
函数
我的方法
1)版本1:大框架
#1.定义一个函数
def add():
pass #2.获取用户的输入
num1 = int(input("请输入第1个数:"))
num2 = int(input("请输入第2个数:"))
num3 = int(input("请输入第3个数:")) #3.调用函数,打印结果
add()
2)版本2:我的版本
#1.定义一个函数
def add(a,b,c):
result = a + b + c
return result #2.获取用户的输入
num1 = int(input("请输入第1个数:"))
num2 = int(input("请输入第2个数:"))
num3 = int(input("请输入第3个数:")) #3.调用函数,打印结果
the_add = add(num1,num2,num3)
print(the_add)

3)版本3:优化
正确方法
1)版本1:先写大框架,用到函数在定义
#3.定义函数
def add(a,b,c):
result = a+b+c
print("%s+%s=%s"%(a,b,c)) #1.获取用户的输入
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第2个数:"))
num3 = int(input("请输入第3个数:")) #2.要执行某个函数,完成和
#axxx(num1,num2,num3) add(num1,num2,num3)
2)版本2:再定义一个函数
#3.定义函数
def add(a,b,c): #形参
result = a+b+c
# print("%s+%s=%s"%(a,b,c))
return result #返回值 #B:定义函数
def average(a1,a2,a3): #形式参数,接受参数的
#result = a1+a2+a3
result = add(a1,a2,a3) #实参
result = result/3
print("average=%d"%result) #%s 输入的是3.6666666 #1.获取用户的输入
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第2个数:"))
num3 = int(input("请输入第3个数:")) #2.要执行某个函数,完成和
#axxx(num1,num2,num3)
#add(num1,num2,num3) #A:求出三个数的平均值
#xxxx(num1,num2,num3)
average(num1,num2,num3) # 实参 传递给函数实实在在的参数
3)版本3:定义第3 个函数
#3.定义函数
def add(a,b,c): #形参
result = a+b+c
# print("%s+%s=%s"%(a,b,c))
return result #B:定义函数
def average(a1,a2,a3): #形参
#result = a1+a2+a3
result = add(a1,a2,a3) #实参
result = result/3
# print("average=%d"%result) #%s 输入的是3.6666666
return result #b.定义新函数
def result_2(x,y,z): #形参
# result = x+y+z
#result = result/3
result = average(x,y,z) #实参
result = result**2
print("新的数值是:%d"%result) #1.获取用户的输入
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第2个数:"))
num3 = int(input("请输入第3个数:")) #2.要执行某个函数,完成和
#axxx(num1,num2,num3)
#add(num1,num2,num3) #A:求出三个数的平均值
#xxxx(num1,num2,num3)
#average(num1,num2,num3) #a.执行某个函数,实现3个数平均值的平方
result_2(num1,num2,num3) #实参

day 2 函数的嵌套的更多相关文章
- python中函数的定义,调用,全局变量,局部变量,函数的嵌套使用-初级篇
函数的基本概述 在学习函数之前,一直遵循:面向过程编程,即:根据业务逻辑从上到下实现功能,可以思考一下如果有某个功能的代码是在多个地方使用的是否可以只写一次?此时的代码该如何定义.先观察以下的案例: ...
- Python入门之函数的嵌套/名称空间/作用域/函数对象/闭包函数
本篇目录: 一.函数嵌套 二.函数名称空间与作用域 三.函数对象 四.闭包函数 ============================================================ ...
- Python基础--函数的嵌套和闭包
一.名称空间和作用域 名称空间:Python所有有关命名的操作都是在操作名称空间,例如变量名,函数名 1.内置名称空间:Python解释器提供好的功能,解释器启动跟着一起启动,是全局作用域 2.全局名 ...
- day12(表达式,推导式,名称空间与作用域,函数的嵌套定义)
一,复习 # 字符串的比较 # -- 按照从左往右比较每一个字符,通过字符对应的ascll进行比较 # print('a' > 'A') #True # print('ac' > 'ab' ...
- python第十三天,函数的嵌套定义,global,nonlocal关键字的使用,闭包及闭包的运算场景,装饰器
今日内容 1. 函数的嵌套定义 2.global,nonlocal关键字 3.闭包及闭包的运用场景 4.装饰器 函数的嵌套定义 1. 概念:在一个函数内部定义另一个函数 2 .为什么要有函数的嵌套定义 ...
- python第十二天, 三元表达式, 函数对象,名称空间与作用域,函数的嵌套定义
复习 1. 字符串的比较: 2. 函数的参数:形参与实参 3. 实参的分类:位置实参与关键字实参 4. 形参分类: 1.无值位置形参 2.有值位置形参 3.可变长位置形参 4.有无值关键字形参 5.可 ...
- python13 1.函数的嵌套定义 2.global、nonlocal关键字 3.闭包及闭包的运用场景 4.装饰器
## 复习 '''1.函数对象:函数名 => 存放的是函数的内存地址1)函数名 - 找到的是函数的内存地址2)函数名() - 调用函数 => 函数的返回值 eg:fn()() =&g ...
- python12--字符串的比较 函数的默认值的细节 三元表达式 函数对象 名称空间 作用域 列表与字典的推导式 四则运算 函数的嵌套
复习 1.字符串的比较; 2.函数的参数; ******实参与形参的分类: 3.函数的嵌套调用: # 字符串的比较# -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 ...
- python—day9 函数的定义、操作使用方法、函数的分类、函数的嵌套调用
一.函数的定义 函数的四个组成部分: 函数名. 函数体. 函数返回值. 函数参数 1.概念:重复利用的工具,可以完成特定功能的代码块,函数是存放代码块的容器 2.定义: def:声明函数的关键词 函数 ...
- day13函数的嵌套定义,global、nonlocal关键字,闭包及闭包的运用场景,装饰器
复习 ''' 1.函数对象:函数名 => 存放的是函数的内存地址 1)函数名 - 找到的是函数的内存地址 2)函数名() - 调用函数 => 函数的返回值 eg:fn()() => ...
随机推荐
- Redis命令、数据结构场景、配置文件总结
本文大纲 一.常用数据类型简介二.redis操作命令三.redis配置文件详解四.redis数据类型使用场景 一.常用数据类型简介 redis常用五种数据类型:string,hash,list,set ...
- Pymyaql操作数据库
Pymyaql操作数据库 Python3中专门用于操作Mysql数据库的模块. 一. 导入模块 import pymysql 二. 创建连接 conn=pymysql.connect(host=’12 ...
- Odoo模块添加logo
模块的static目录是专门用于存放静态文件内容如:图片.css等的.其中,description目录是存放关于模块的一些描述性的文件的,其中,模块的图标也放在下面,以icon命名.
- Kali-linux绘制网络结构图
CaseFile工具用来绘制网络结构图.使用该工具能快速添加和连接,并能以图形界面形式灵活的构建网络结构图.本节将介绍Maltego CaseFile的使用. 在使用CaseFile工具之前,需要修改 ...
- Win32多线程之核心对象
CreateThread()传回两个值,用以识别一个新的线程.第一个值是个Handle, 这也是CreateThread()的返回值,大部分与线程有关的API函数都需要它.第二个值是由lpThrea ...
- linux日志log查询常用命令
一般的log文件都是需要过滤 1.grep 过滤查找 查询ip 221.2.100.138的log grep '221.2.100.138' web.access.log grep 221.2.10 ...
- DataFrame查找
一 通过索引取数据 (ix/loc/iloc) loc (根据索引名称取数据 , 适合多列) iloc (根据索引序号取数据, 适合多列) at (和loc类似,只用于取单列, 性能更好) ia ...
- 登录SQLServer报错:无法连接到DESKTOP-LDJHQGN
解决方法:下↓↓↓
- ASP.NET Core 中的 WebSocket 支持(转自MSDN)
本文介绍 ASP.NET Core 中 WebSocket 的入门方法. WebSocket (RFC 6455) 是一个协议,支持通过 TCP 连接建立持久的双向信道. 它用于从快速实时通信中获益的 ...
- 利用纯JS和HTML Canvas生成随机迷宫过程中产生的有趣的事情
上效果图: #先看生成随机迷宫的代码吧↓ <html> <head> <title>生成随机迷宫v1.0</title> </head> & ...