函数基础小结

函数基础小结

一、定义函数

只检测语法,不执行代码

二、函数定义的三种方式

  1. 有参函数
  2. 无参函数
  3. 空函数

三、调用函数

def f1():
    return 123

f = f1()
f1()*2
lis = [f1(),2]

四、函数的返回值

return返回返回值,函数遇到return会终止,return可以返回任意数据类型的值,同时也可以返回多个值

函数只有在调用阶段才会接收返回值,默认返回None

五、函数的参数

5.1 形参

接收实参,具有描述意义,没有具体值

5.2 实参

具有具体的值,传参给形参

  1. 位置形参:从左到右一个一个接收位置实参
  2. 位置实参:从左到右一个一个传给形参
  3. 关键字实参:根据形参名传参
  4. 默认形参:给形参一个默认值,如果实参不对该形参传值,则使用默认值;反之,使用实参传的值
  • 关键字实参必须得在位置实参后面,默认形参也必须在位置形参后面
  • 一个形参只能接收一个值
def f1(x,y):
    pass

f1(1,x=2)  # 报错

六、可变长参数

  1. *形参:接收多余的位置实参,以元组的方式存储
  2. *实参:把元组打散成一个个位置实参,然后传给形参(不推荐使用,只做了解)
  3. **形参:接收多余的关键字实参,以字典的方式存储
  4. **实参:把字典打散称一个个关键字实参,然后传给形参(不推荐使用,只做了解)
  • 牢记:
def f1(*args,**kwargs):
    pass

# f1可以接收所有的参数
f1(1,1,2,3,3,4,5,x=2,y=5,a=8)

七、函数对象

def f1():
    pass
  1. 引用f=f1
  2. 作为函数返回值return f1
  3. 作为函数参数传入f2(f1)
  4. 容器元素lis=[f1]

八、函数的嵌套

def f1():
    def f2():
        pass

f2()  # 报错

九、名称空间与作用域

  1. 内置名称空间:存放内置的名字,如len/eval/enumerate/bytes/max/min/sorted/map/filter....
  2. 全局名称空间:除了内置与局部,其他的名字都存放在全局名称空间内
  3. 局部名称空间:函数内部的名字都是局部名称空间,不同函数内部的名字互不干涉
  • 查找顺序:从当前开始往上寻找,如果当前是局部名称空间,查找顺序为:局部-->全局-->内置
  • 执行顺序:先内置(Python解释器启动的时候才会生成)-->全局(文件执行的时候才会生成)-->局部(函数调用的时候才会生成)

作用域:全局名称空间和局部名称空间中可能会存在名字相同的变量,但是这两个变量互不影响。只针对不可变数据类型,对于可变数据类型除外,尽量不要使用可变类型的这个特性,如果真的使用,可以不同的函数定义不同的变量出来。

原文地址:https://www.cnblogs.com/randysun/p/12240425.html

时间: 2024-08-15 18:38:28

函数基础小结的相关文章

SQL中convert()函数使用小结

CONVERT(data_type,expression[,style]) convert(varchar(10),字段名,转换格式) 说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到. 语句 结果SELECT CONVERT(varchar(100), GETDATE(), 0) 07 15 2009 4:06PMSELECT CONVERT(varchar(100), GETD

python 学习笔记day06-错误和异常、函数基础

错误和异常 基本概念 错误 从软件方面来说,错误是语法或是逻辑上的 - 语法错误指示软件的结构上有错误,导致不能被解释器解释或编译器无法编译,这些错误必须在程序执行前纠正 - 逻辑错误可能是由于不完整或是不合法的输入所致,还可能十逻辑无法生成.计算,或是输出结果需要的无法执行 异常 当python检测到一个错误时,解释器就会指出当前流已经无法继续执行下去,这时候就出现了异常 异常是因为程序出现了错误而在正常控制流以外采取的行为 这个行为又分为两个阶段: - 首先是引起异常发生的错误 - 然后是检

2016.8.07 函数基础

写在前面:今天我将发表函数基础.对象基础.this.new.封装.封装例子  这几篇个人理解文章.最好能一口气看完,并自己写下,相信会对想要理解函数和对象的朋友们会有一些帮助. 目录:函数的三种声明方式. 函数的return. 函数形参和实参的区别. 函数注意 函数的三种声明方式: 1.自定义函数: function f1(){ alert("asd"); } 调用方式: 函数名 f1(); 特点: (1)函数声明的函数在JS预解析的时候,会提升到作用域的最前面 (2)函数声明中的函数

【2017-03-05】函数基础、函数四种结构、ref和out参数、递归

一.函数基础 1.函数/方法:非常抽象独立完成某项功能的一个个体 2.函数的作用: 提高代码的重用性提高功能开发的效率提高程序代码的可维护性 3.分类 固定功能函数高度抽象函数 4.函数四要素:输入,输出,函数体,函数名.(函数体.函数名必须有,输入.输出不是必须有的!) 5.格式 public static 返回值类型 函数名(输入值类型参数,第二个,第三个,int a,string b) { return 上面的返回值类型 } 注:函数也是放在Main函数之外,在Class之内.花括号之内的

JavaScript 函数基础

1. JavaScript 函数基础 1. 定义方法 2. 函数的调用方法 3. 函数方法 apply : 将函数作为数组的方法来调用 将参数以数组形式传递给该方法 call   : 将函数作为对象的方法来调用 将制定参数传递给该方法 toString : 返回函数的字符串表示 4. arguments对象 arguments对象 功能: 存放实参的参数列表 特性:仅能在函数体内使用  带有下标属性 但并非数组  函数声明时自动初始化 属性: A) length 获取函数实参的长度 B) cal

Java Web基础小结之Jsp JavaBean

Java Web基础小结In computing, Java Web Start (also known as JavaWS, javaws or JAWS) is a framework developed by Sun Microsystems (now Oracle) that allows users to start application software for the Java Pl... http://bbs.chinaacc.com/forum-2-3/offset-1/to

速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数

[源码下载] 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函数返回值 可变函数 匿名函数 闭包函数 回调函数 示例1.函数的相关知识点 1(基础)function/function1.php <?php /** * 函数的相关知识点 1(基础) */ // 可以在相关的 function 声明语句之前调用该函数 f1(); function f1() { echo "f1"; echo "<br />"; } // 这里调用

Javascript eval()函数 基础回顾

如果您想详细了解ev al和JSON请参考以下链接: eval  :https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Global_Functions/Eval JSON:http://www.json.org/ eval函数的工作原理 eval函数会评估一个给定的含有JavaScript代码的字符串,并且试图去执行包含在字符串里的表达式或者一系列的合法的JavaScript语句.eval函数将把最后一个表达式或者语句所

PHP基础入门(二)【PHP函数基础】

PHP基础入门(二)--函数基础 了解 PHP基础入门详解(一) 后,给大家分享一下PHP的函数基础. 这部分主要讲的就是: 函数的声明与使用.PHP中变量的作用域.静态变量.函数的参数传递.变量函数.回调函数.匿名函数.include&require.PHP闭包 PHP的函数基础↓↓↓ 一.函数的声明与使用 1.标识符:程序中的变量名,属性名,方法名,函数名,类名统称为标识符: ① 标识符的命名要求:  只要是标识符,命名就只有字母.数字.下划线组成,开头不能是数字: ② 标识符的命名规范: