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()() => ...
随机推荐
- ipconfig命令一览
前文用到了ipconfig /displaydns和ipconfig /flushdns,加上之前经常ipconfig查ip,今天看了一下别的命令,用的不多,仅作备忘~~ 命令行窗口中输入ipconf ...
- redis几种加锁的实现
1. redis加锁分类 redis能用的的加锁命令分表是INCR.SETNX.SET 2. 第一种锁命令INCR 这种加锁的思路是, key 不存在,那么 key 的值会先被初始化为 0 ,然后再执 ...
- SpringBoot接口返回去掉空字段
返回的接口中存在值为null或者空的字段过滤掉 @Configuration public class JacksonConfig { @Bean @Primary @ConditionalOnMis ...
- 【【模板】严格次小生成树[BJWC2010]】
树上的路径怎么能没有树剖 显然,次小生成树和最小生成树只在一条边上有差距,于是我们就可以枚举这一条边,将所有边加入最小生成树,之后再来从这些并不是那么小的生成树中找到那个最小的 我们往最小生成树里加入 ...
- Asp.net Web Api添加异常筛选器
一.定义一个异常筛选器 using System;using System.Collections.Generic;using System.Linq;using System.Web;using S ...
- AMQ(approximate membership queries)介绍
目录 简介 举例 Bloom Filter 算法过程 1)位数组: 2)添加元素,k个独立hash函数 3)判断元素是否存在集合 Quotient Filter and Cascade Filter ...
- 关于JavaScript 常见的面试题
关于JavaScript常见的面试题总结 一.JavaScript基本数据类型 null:空.无.表示不存在,当为对象的属性赋值为null,表示删除该属性 undefined:未定义.当声明变量却没有 ...
- JBPM学习(四):运行流程实例
概念: ProcessInstance,流程实例:代表流程定义的一次执行.如:张三昨天按请假流程请了一次假.一个流程实例包含了全部执行阶段,当中最典型的属性就是跟踪当前节点的指针,例如以下图. Exe ...
- Python入门语法
Python入门语法 动态变量 a=3 整数 a='abc' a="abc" 字符串 a=3.0 小数 a=true a=false 布尔型 a=3 ...
- Linux文本处理
作为一名 Linux 研发人员,几乎每天都要面对文本处理场景. 因此 掌握文本处理套路 并 熟练运用文本处理命令 ,对于 提升工作效率 意义重大. 本文以一个实战例子抛砖引玉,介绍如何运用 grep ...