Python学习--函数调用与声明问题
发现一个奇怪的问题:
Python在函数里面调用另一个函数时,被调用函数是不用事先定义的,例如现在这个例子是可以正确执行的:
def test1():test()def test():print('test')test1()
这个例子中,函数test1()调用了函数test(),但是被调用的函数是在之后才定义的,对于Python这种解释型语言来说,应该是会报错才对的,但是并没有报错。下面这种方法就会报错
test()def test():print('test')
运行结果:
这种现象我觉得应该是这样的,第一个例子中,真正的函数调用发生在最后一行test1(),前面的只是函数定义,而函数定义对函数顺序是不敏感的,被调用的函数只要在真正执行的语句之前就可以,如下面解释的那样
def test1(): #这是定义函数test1()test() #函数test1()中调用了test(),此时函数test()还没有定义,不过没关系,因为这里只是定义函数test1(),只要在调用test1()的地方之前定义了test()函数就可以!!! def test(): #这是定义函数test()print('test')test1() #这里是调用函数test1()的语句,只要在这句之前定义了test(),程序就不会报错!!!
Python学习--函数调用与声明问题相关推荐
- Python学习笔记——全局变量声明
最近在编写python程序时发现,在函数中可以对函数外面的全局变量进行读取.打印等操作,但是不能赋值,否则会报错: UnboundLocalError: local variable 'a' refe ...
- Python学习笔记:利用timeit计算函数调用耗时
Python学习笔记:利用timeit计算函数调用耗时 一.timeit模块简介 Timer对象包含两个参数:第一个参数是你想要计时的Python语句,第二个参数运行一次来建立测试. 默认情况time ...
- python学习之第三课时--基本数据类型及区别,变量
python学习之第三课时--基本数据类型及区别,变量 基本数据类型及区别 1. 数字类型(int) 数字型--变量值直接是数字,没有双引号"" 整数 2. 浮点数(float ...
- python学习手册条件-Python学习手册(第4版)pdf
Python学习手册(第4版) 内容简介 <Python学习手册(第4版)>学习Python的主要内建对象类型:数字.列表和字典.使用Python语句创建和处理对象,并且学习Python的 ...
- python学习手册中文版免费下载-Python学习手册
Python学习手册第4 版将帮助你使用Python快速实现这一点,不管你是编程新手还是Python初学者.本书是易于掌握和自学的教程,根据作者Python专家Mark Lutz的著名培训课程编写而成 ...
- Python学习手册(套装上下册)(原书第5版)
Python学习手册(原书第5版) 本书分为上.下两册. 如果你想动手编写高效.高质量并且很容易与其他语言和工具集成的代码,本书将快速地帮助你利用Python提高效率.本书基于Python专家的流程培 ...
- python 学习笔记 (核心)
python 学习笔记 (核心) Python解释器从头到尾一行接一行执行脚本 # -*- coding: UTF-8 -*- //字符编码 不区分单引号和双引号,x='hello',x[ ...
- python基础语法手册-Python学习手册(第4版)pdf
Python学习手册(第4版) 内容简介 <Python学习手册(第4版)>学习Python的主要内建对象类型:数字.列表和字典.使用Python语句创建和处理对象,并且学习Python的 ...
- python零基础学习书-Python零基础到进阶必读的书藉:Python学习手册pdf免费下载
提取码:0oor Google和YouTube由于Python的高可适应性.易于维护以及适合于快速开发而采用它.如果你想要编写高质量.高效的并且易于与其他语言和工具集成的代码,<Python学习 ...
最新文章
- 【译】详解Asp.net MVC DropDownLists
- 记录ie暂时遇到的问题
- 求字符串中最长无重复字符的子串
- stm32的can总线理解及应用——程序对应stm32f103系列
- linux 内核参数 rss,Linux控制内存的内核参数
- 客户关系管理系统-CRM源码
- Razor视图引擎浅析
- 微软:今年要让Office 2007寿终正寝
- python怎么读取txt文件-Python三种读取txt文件方式
- Java解析JSON,按规则获取JSON节点内容
- debugger心得
- 王健林身价暴跌百亿,儿子却在撒钱!
- 戴尔linux改win7教程视频,戴尔笔记本win10改win7系统BIOS设置详细教程
- c语言判断正整数x是否为同构数,c语言上机题库(阅读).doc
- Genesis非洲代理与加纳共和国政府正式签订紧密合作协议
- python运行selenium时浏览器闪退情况:
- [Error]cannot convert 'float'tot float for argument 1to floa
- python多用户B2C商城系统毕业设计开题报告
- 敲响警钟:我在台资企业的悲惨待遇
- uniapp人脸识别解决方案
热门文章
- 华为android密码是什么格式的,华为手机怎么给相册设置独立的密码?
- 小说里的编程 【连载之二十六】元宇宙里月亮弯弯
- * 在线版大富翁游戏
- 数据预处理:数据离散化
- 手机屏保密码忘记了怎么解开
- 17换代哈弗h6系统升级_17款全新换代哈弗H6两周年用车感受,分享一下
- python安装email模块_Python byemail包_程序模块 - PyPI - Python中文网
- python发微信语音没声音_Python文字转换语音,抠脚大汉秒变撒娇萌妹
- iOS 摇一摇的实现
- 分类计数原理与分步计数原理_分类计数原理和分步计数原理教案