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 函数的嵌套的更多相关文章

  1. python中函数的定义,调用,全局变量,局部变量,函数的嵌套使用-初级篇

    函数的基本概述 在学习函数之前,一直遵循:面向过程编程,即:根据业务逻辑从上到下实现功能,可以思考一下如果有某个功能的代码是在多个地方使用的是否可以只写一次?此时的代码该如何定义.先观察以下的案例: ...

  2. Python入门之函数的嵌套/名称空间/作用域/函数对象/闭包函数

    本篇目录: 一.函数嵌套 二.函数名称空间与作用域 三.函数对象 四.闭包函数 ============================================================ ...

  3. Python基础--函数的嵌套和闭包

    一.名称空间和作用域 名称空间:Python所有有关命名的操作都是在操作名称空间,例如变量名,函数名 1.内置名称空间:Python解释器提供好的功能,解释器启动跟着一起启动,是全局作用域 2.全局名 ...

  4. day12(表达式,推导式,名称空间与作用域,函数的嵌套定义)

    一,复习 # 字符串的比较 # -- 按照从左往右比较每一个字符,通过字符对应的ascll进行比较 # print('a' > 'A') #True # print('ac' > 'ab' ...

  5. python第十三天,函数的嵌套定义,global,nonlocal关键字的使用,闭包及闭包的运算场景,装饰器

    今日内容 1. 函数的嵌套定义 2.global,nonlocal关键字 3.闭包及闭包的运用场景 4.装饰器 函数的嵌套定义 1. 概念:在一个函数内部定义另一个函数 2 .为什么要有函数的嵌套定义 ...

  6. python第十二天, 三元表达式, 函数对象,名称空间与作用域,函数的嵌套定义

    复习 1. 字符串的比较: 2. 函数的参数:形参与实参 3. 实参的分类:位置实参与关键字实参 4. 形参分类: 1.无值位置形参 2.有值位置形参 3.可变长位置形参 4.有无值关键字形参 5.可 ...

  7. python13 1.函数的嵌套定义 2.global、nonlocal关键字 3.闭包及闭包的运用场景 4.装饰器

    ## 复习   '''1.函数对象:函数名 => 存放的是函数的内存地址1)函数名 - 找到的是函数的内存地址2)函数名() - 调用函数 => 函数的返回值  eg:fn()() =&g ...

  8. python12--字符串的比较 函数的默认值的细节 三元表达式 函数对象 名称空间 作用域 列表与字典的推导式 四则运算 函数的嵌套

     复习   1.字符串的比较; 2.函数的参数; ******实参与形参的分类: 3.函数的嵌套调用:     # 字符串的比较#  -- 按照从左往右比较每一个字符,通过字符对应的ascii进行比较 ...

  9. python—day9 函数的定义、操作使用方法、函数的分类、函数的嵌套调用

    一.函数的定义 函数的四个组成部分: 函数名. 函数体. 函数返回值. 函数参数 1.概念:重复利用的工具,可以完成特定功能的代码块,函数是存放代码块的容器 2.定义: def:声明函数的关键词 函数 ...

  10. day13函数的嵌套定义,global、nonlocal关键字,闭包及闭包的运用场景,装饰器

    复习 ''' 1.函数对象:函数名 => 存放的是函数的内存地址 1)函数名 - 找到的是函数的内存地址 2)函数名() - 调用函数 => 函数的返回值 eg:fn()() => ...

随机推荐

  1. SGU---462 Electrician 最大生成树

    题目链接: https://cn.vjudge.net/problem/SGU-462 题目大意: 有N条电线需要接入电网,第i条电线计划连接ai和bi两个地点,电线有两个属性:ri(电线稳定度)和c ...

  2. c++抽象类,纯虚函数

  3. 泛型和 Any 类型

    泛型和 Any 类型 这两个类型看起来很相似,但是一定要小心两者的区别.他们区别在于 Any 类型会避开类型的检查,所以尽量少用最好不用.泛型一方面很灵活一方面也很安全,下面举个例子感受下两者的区别: ...

  4. ZTree 使用范例

    http://www.treejs.cn/v3/api.php zTree v3.x 入门指南 Api 文档 https://github.com/zTree/zTree_v3 下载ZTree v3 ...

  5. 【[AHOI2008]逆序对】

    被锤爆了 被这个题搞得自闭了一上午,觉得自己没什么前途了 我又没有看出来这个题的一个非常重要的性质 我们填进去的数一定是单调不降的 首先如果填进去的数并不是单调不降的,那么填进去本身就会产生一些逆序对 ...

  6. LayIM.AspNetCore Middleware 开发日记(六)嵌入资源的使用,layim.config的封装

    前言 距离上一篇博客竟然已经10多天了...工作上的事,个人原因,种种吧.不多说废话,本文将会重点介绍layim的入口配置. LayIM配置 其实在开发者文档里面已经描述的很清楚了.除了几个重要的接口 ...

  7. Azure Blob数据迁移工具

    数据迁移备份,更多的应用场景见https://docs.azure.cn/zh-cn/storage/common/storage-moving-data?toc=%2fstorage%2fblobs ...

  8. ubuntu查询命令行安装的软件的安装路径

    which git // 查询git的安装路径

  9. ubuntu中phpstorm和sublime快速启动

    ubuntu gnome桌面 + dash to dock扩展 下载安装包手动安装phpstorm会遇到无法固定到dash上的情况(运行软件时在dash右击未出现Add to Favoriates) ...

  10. Mybatis Plus启动注入 SQL 原理分析

    1) 问题: xxxMapper 继承了 BaseMapper<T>, BaseMapper 中提供了通用的 CRUD 方法, 方法来源于 BaseMapper, 有方法就必须有 SQL, ...