定义函数会创建一个函数类的对象,有type函数。

>>> type(print_new)

调用新函数的语法和调用内置函数是一样的,直接打印函数名:

>>> print_new()

I am ok

I am very fine

一旦定义了一个函数,就可以在其它函数里面来调用这个函数,比如我们写个repeat_new的函数来测试一下。

>>> def repeat_new():

... print_new()

...

>>> repeat_new() #调用

I am ok

I am very fine

二,定义并使用

整合一下前面的小块代码:

>>> def print_new():

... print('I am ok')

... print('I am very fine')

...

>>> def repeat_new():

... print_new()

...

>>> repeat_new()

I am ok

I am very fine

这个代码块包含两个函数的定义:print_new以及repeat_new,函数定义的执行就和其他语句一样,但是效果是创建函数对象。

函数定义中的语句直到函数被调用的时候才会运行,函数的定义本身不会有任何输出。

三,运行流程

为了确保一个函数在首次被调用之前已经定义,我们必须要明白语句运行的顺序,也就是所谓"运行流程"。

一个Python程序都是从第一个语句开始运行的。从首至尾,每次运行一个语句。函数的定义并不会改变程序的运行流程,但要注意,函数体内部的语句只有在函数被调用的时候才会运行。

函数调用就像是运行流程有了绕道的行为,没有直接去执行下一个语句,运行流跳入到函数体内,运行里面的语句,然后再回来从离开的地方继续执行。

简要说,就是跳出跳入互相调用,完成整个程序的执行。

Python本身会实时追踪应该执行的位置,所以每次一个函数执行完毕了,程序都会回到当时跳出的位置,然后继续运行,等执行到了程序的末尾,就终止了。

有时候,我们要按照运行流程来读代码,才更好理解一些。

结束。

python程序调用函数的过程_Python_自定义函数_使用_运行流程相关推荐

  1. 【C语言函数】 - 库函数、自定义函数、函数参数、函数调用、嵌套调用链式访问、递归与迭代、缓冲区

    目录 一.函数是什么 二.C语言中函数的分类 1.如何学会使用库函数 1.1.strcpy 1.2.memset 2.自定义函数 2.1.与库函数的区别 2.2.写一个函数可以找出两个整数的最大值 2 ...

  2. php 自定义 引用函数,php总结6——自定义函数、引用传值

    6.1 自定义函数 function 函数名称(参数[=默认值],参数[=默认值]...){ 函数体 [return val]; } 1) 无参数无返回 2) 有参数无返回 3) 有参数有返回 函数中 ...

  3. C语言中的函数(重点介绍自定义函数)

    C语言中的函数分为库函数和自定义函数,本篇重点介绍自定义函数中的函数调用 函数由一个或多个语句块组成,负责完成某项特定任务, 相较于其他代码,具有相对的独立性,一般会有返回值和输入参数,提供对过程的封 ...

  4. oracle自定义函数获取省份,oracle 自定义函数 方法 基本例子

    核心提示:函数用于返回特定数据.执行时得找一个变量接收函数的返回值; 语法如下: create or replace function function_name ( argu1 [mode1] da ...

  5. c语言函数详解1——自定义函数

    这篇文章理论性知识比较多,不过对于初学者对于函数的理解会有更深层次的帮助 目录 c语言的函数--子程序 自定义函数 c语言的函数--子程序 *是大型程序中的某部分代码,由一个或者多个语句组成,她负责完 ...

  6. R语言dplyr包summarise_at函数计算dataframe数据中多个数据列(通过向量指定)的计数个数、均值和中位数、使用list函数指定函数列表并指定自定义函数名称

    R语言dplyr包summarise_at函数计算dataframe数据中多个数据列(通过向量指定)的计数个数.均值和中位数.使用list函数指定函数列表并指定自定义函数名称 目录

  7. 爆改YOLOV7的detect.py制作成API接口供其他python程序调用(超低延时)

    一.前言 YOLO系列框架凭借其超高的运行流畅度和不俗的准确率,一直被广泛地应用到各个领域. 刚刚推出不久的YOLOV7在5 FPS到160 FPS范围内的速度和精度达到了新的高度,并在GPU V10 ...

  8. Python之函数重写(系统函数的重写,自定义函数的重写)

    系统函数的重写 __str__:在调用print打印对象的时候,会被自动调用,默认返回的对象的地址[给程序员使用的] __repr__:在Python解释器中调用的方法[给计算机使用的] #系统函数的 ...

  9. SQLite 版本引发的 Python 程序调用问题

    问题 在跑 OpenStack functional 功能测试的时候有两个用例过不去. nova.tests.functional.db.test_resource_provider.Resource ...

最新文章

  1. MySQL返回多行错误怎么处理_结果包含多个行错误mysql
  2. Spark:计算时间差(天数和秒数)
  3. 李善兰如何用汉字写公式 | 晚清高数课本长什么样?
  4. 服务器修改地址,服务器修改管理地址
  5. 【译】2019年开始使用Typescript
  6. oracle树子类遍历父类_不懂数据库索引的底层原理?那是因为你心里没点b树
  7. ThinkSNS Plus PHP开发概述
  8. python sleep 毫秒_如何在python中休眠Webdriver毫秒
  9. Java集合框架和重要接口、类
  10. 微软为啥让免费升Win10?
  11. 俄亥俄大学计算机科学系,俄亥俄大学课程及专业设置
  12. 齐大计算机与控制学院在哪个校区阮,齐齐哈尔大学各个学院所在校区做个介绍...
  13. 【数据结构笔记】3.栈和队列
  14. 黑苹果相关(说好的不折腾)
  15. Google搜索引擎使用技巧
  16. 物尽其用,数码相机兼职摄像头!
  17. HTML---表格合并(详解)
  18. 【报错解决】telnet时报错:无法打开到主机的连接,在端口23连接失败
  19. MTK平台关于Metadata当中Size的配置
  20. 【愚公系列】2023年02月 .NET CORE工具案例-Caliburn.Micro的使用基于WPF的改造的MVVM案例

热门文章

  1. XML文件处理的思考
  2. 程序员修复一个bug的心路历程,太形象了
  3. 【vue2.0进阶】轻松理解Vuex的3个核心概念
  4. 第二期临床基因组家系数据分析实战,快速发表SCI文章
  5. 干货集锦:200+生信范文、30+款软件、12类图片素材PPT,今年的SCI稳了!(附下载)...
  6. gggenes绘制多物种基因结构比较
  7. 鸟类南飞,去的是哪个“南方”?
  8. 生物科研神器!30分钟把人家一天的工作都给干完了!
  9. WGCNA分析,简单全面的最新教程(可以在线做了)
  10. 是Excel的图,不!是R的图