函数的定义*****

函数:

   完成实现某种特定功能的代码块,作为一个整体,对其进行特定的命名,该名称就是函数

    --在现实生活中,很多问题都需要通过一些工具进行处理=>可以将工具提前生产出来并且命名,

      =>通过名字就可以找到工具  => 使用工具来解决问题

函数的优点:

    1、解决代码的冗余

    2、可以重复调用

    3、使代码逻辑变得清晰

函数的四部分:

    1、函数名:使用该函数的依据

    2、参数:执行函数需要的外界条件信息

    3、函数体:完成功能的执行代码块

    4、返回值:功能完成的结果返回给外界

函数的定义:通过def关键字来完成定义

    def 函数名():

      完成功能代码块

      return

函数的使用*****

使用函数

1、根据需求定义函数

2、根据函数名找到函数所在地址内存(调用函数)

3、函数名()执行函数地址里面所有的代码块

  --函数在定义时需要外界传送参数,就要在调用时传入相应的参数

4、函数执行完一定有返回结果,通过return关键字将结果返回给外界(获得返回值)

  --外界需要执行结果时用变量接收,反之只执行函数(不需要接收)

注:函数必须先定义后调用(不然返回变量未被定义的报错)

  函数四个部分都可以通过需求的不同而产生变化

函数的分类

1、根据函数体分类

  --空函数

    就是先用pass填充函数体的函数:优先明确函数名(在开发初期先将所有功能全部列出来而不去考虑内部

    的执行过程,用pass占位,项目后期pass都要换成执行代码块)

  --非空函数

    有函数体的函数

2、根据参数分类

  --有参函数

    就是函数体在执行过程中需要外界传来的参数来得到最终结果

  --无参函数

    就是函数体在执行过程中不需要外界传来的参数就能得到最终结果

3、根据返回值来分类  (所有函数都有返回值)

  --不考虑返回值的函数(不明确返回值)

    外部不需要函数最终执行的结果

  --明确返回值

    外部需要知道函数内部执行的结果

函数的返回值

重点:输入函数名()

    1、拿到函数名的内存空间地址

    2、加()执行函数体

    3、得到执行的最终结果

重点:返回值return的功能

    1、结束函数

    2、把函数内部的数据跟在return后面,可以将函数内部的数据传给外界

应用场景

1、不明确return关键字的函数,系统会在函数的末尾自动添加return(为了结束函数体),默认返回的是None

def fn():

  print('你好厉害')  #这里外界不需要知道函数体的最终运行结果

fn()

2、明确了return关键字的作用(为了结束函数而结束)

def pr_name():

  while 1:

    name = input('name:')

    if name == 'q'

      return    #这里是把函数整个结束掉,下面的代码都不执行

      break    #这里只是把while循环结束掉,while循环外面的print还是可以执行的

    print(name)

  print(name)

3、有明确返回值需求的函数

    python中实际上只有一个返回值

      值跟在return后面,把值传给外界参数

      可以跟多个值,用逗号隔开,返回的是由多个值组成的元组,实际上还是一个值

一个值

def get_num():

  num = input('num:')

  return num

ms = get_num()

print(ms)

多个值

def get_num():

  num = input('num:')

  return num,1,2

ms = get_num()    #得到的是(num,1,2)的元组

num1,num2,num3 = get_num()  #python可以返回多个值原因是python中支持解压赋值

print(ms)          (num,1,2)

print(num1,num2,num3)     num  1   2

转载于:https://www.cnblogs.com/hesujian/p/10765008.html

python day10相关推荐

  1. python day10

    1.动态传参:(*args,**kwargs) *表示动态传参,可以接受所有的位置参数,传参的时候自动把实参打包成元祖给形参 ** 表示接收关键字的动态传参,接收到的内容放在字典里 无敌传参 顺序:位 ...

  2. Python阶段总结 飞机案例—Python Day10

    目录 1.搭建界面和键盘检测 2.添加背景音乐 3.运行优化 4.控制玩具飞机-面向过程 5.控制玩具飞机-面向对象 6.玩家飞机发射子弹 7.显示敌机 8.敌机发射子弹 9.抽象基类 飞机大战-要实 ...

  3. Python day10 global关键字、函数递归、匿名函数、map函数的用法详解

    1.global关键字 引用全局变量,在局部全局变量改变,也会改变,global相当于指针,将地址指向全局变量的name name='littlepage'def littepage():global ...

  4. Python Day10 MySQL 01

    MySQL数据库基本管理 Window版本安装 1.下载:MySQL Community Server 5.7.16 http://dev.mysql.com/downloads/mysql/ 2.解 ...

  5. 跟着太白老师学python day10 函数嵌套, global , nonlocal

    函数嵌套: 第一种嵌套方法 def func():count = 123def inner():print(count)inner() func() 第二种嵌套方法 count = 123 def f ...

  6. 7.1 Python中文件的读取和写入

    文件操作 在Python中实现文件的读写操作可以通过Python的内置函数open实现,使用内置函数open时,我们可以指定文件名.操作模式(打开文件类型,字符型还是二进制型,以及所做操作,读.写.还 ...

  7. python实现大乐透号码生成器

    #python day10 大乐透号码生成器 题目要求:使用random模块模拟大乐透号码生成器.选号规则:前区在1-35范围内随机产生不重复的5个号码,后区在1-12范围内随机产生不重复的2个号码. ...

  8. maximum-subarray[最大连续子序列]

    题目描述 Find the contiguous subarray within an array (containing at least one number) which has the lar ...

  9. longest-common-prefix[最长公共子序列]

    题目描述 Write a function to find the longest common prefix string amongst an array of strings. 思路 求最长公共 ...

最新文章

  1. word如何发布博客到博客园
  2. security NO.2
  3. 全球及中国医用腋拐行业竞争格局及供需前景预测报告2021年版
  4. 《MySQL——备库多线程复制策略。》
  5. C++ 函数参数的默认值和占位参数
  6. [Xilinx]Xilinx ISE14.2中调用文本编辑器NotePad++设置方法
  7. maven学习(3)
  8. android 无法添加依赖关系,Android无法添加aop库依赖
  9. 如何解决“请考虑使用 app.config 将程序集“XXXXXXXX”从版本XXXX重新映射到版本XXXX”的问题
  10. memcache的安装,配置和使用
  11. Qt实现网格显示(图标文本)功能
  12. windows下GMT绘制矢量图
  13. 如何把网站从万网转到百度的服务器,百度域名服务上线“域名转入”功能 附转入教程...
  14. P3488 [POI2009]LYZ-Ice Skates
  15. 十年AI学者影响力盘点:何恺明排名第一,成为全球最具影响力学者
  16. 排中律与实无穷问题的性质分析
  17. 【设计模式】【结构型模式】装饰器模式
  18. 代码整洁之道-读书笔记之整洁的代码
  19. UE4 RTS 框选功能实现
  20. excel多文件查询工具

热门文章

  1. 面试归来,感觉无望,下次再战
  2. 大型网站的架构设计与演进
  3. HDU5763 another meaning -(KMP+DP)
  4. 程序猿能力矩阵 — 敢測吗?看自己在哪个档次
  5. erlang的随机数 及 random:uniform()函数
  6. Bmrxntfj.UIMapper界面对象映射
  7. “互联网+”时代,漫谈影响用户体验的X因素
  8. Bzoj4556 [Tjoi2016Heoi2016]字符串
  9. Struts2笔记——通配符和动态方法调用
  10. Objective-C基础笔记(7)Foundation中的常用结构体