1.通过def function_name([parameter]): 定义,函数一遇到return即结束运行。如果函数没有定义返回值,则返回None,如果定义了一个返回值,则返回该对象,如果一个return中有多个返回值,会将所有对象封装成一个元组返回。

2.定义函数时的参数叫作形参,形参只在被调用时分配内存单元,调用结束后即释放内存;调用函数时传入的参数叫作实参,实参可以是常量、变量、表达式、函数等。未在函数定义时指定默认值的形参,必须在调用时指定值。

3.位置参数即函数调用时传入的参数与定义的位置和值一一对应,关键字参数即在函数调用时通过参数=值指定各个参数的值,此时与位置无关,例如定义函数def test(x,y,z)

位置参数:通过test(1,2,3)调用,则参数1、2、3与x、y、z一一对应

关键字参数:通过test(y=2,z=3,x=1)调用,此时需指定每个参数的值,个数要与定义时一致但是位置可随意

位置参数和关键字参数混合使用:位置参数需在关键字参数前面,关键字参数按顺序赋值,例如test(1,2,z=3),但是test(x=1,2,3)、test(1,2,y=3)会报错

默认参数:如果函数定义时指定一个默认值def test(x,y,z=2),调用时可不指定z的值也可指定,指定则会覆盖默认值2,如通过def test(1,2)或者test(1,2,3)调用

4.*args和**kwargs,不定长参数,一个函数如果同时有*args和**kwargs参数,*args参数必须在**kwargs前面,并且如果有默认参数,默认参数一定要放在最前面

*args是将函数调用时多余传入的、没有关键字的参数收纳在一起形成一个元组赋值给形参,或者通过*[各元素]、*(各元素),将列表、元组中的各个元素分开赋值给形参

**kwargs是将多余传入的、有关键字的参数收纳在一起形成一个字典赋值给形参,或者通过**{各元素}将字典中的各个元素分开赋值给形参

5.global 变量名:表示全局变量,nonlocal 变量名:表示上一级变量

全局变量如果要在局部被修改,必须要加global指定是全局变量,否则不能被修改

6.嵌套函数的执行顺序

python函数—形参、实参、位置参数、关键字参数的更多相关文章

  1. 第十一篇 Python函数之定义&形参&实参&位置参数&关键字参数&可变长参数&默认参数

    函数的定义:函数是为了完成某一特定功能的,函数是逻辑结构化和过程化的一种编程方法 函数的定义格式,函数一般都是有返回值的 #语法 #函数名要能反映其意义 def 函数名(参数1,参数2,参数3,... ...

  2. python学习道路(day4note)(函数,形参实参位置参数匿名参数,匿名函数,高阶函数,镶嵌函数)

    1.函数 2种编程方法 关键词面向对象:华山派 --->> 类----->class面向过程:少林派 -->> 过程--->def 函数式编程:逍遥派 --> ...

  3. Python - 函数形参之必填参数、缺省参数、可变参数、关键字参数的详细使用

    Python函数形参 必传参数:平时最常用的,必传确定数量的参数 缺省参数:在调用函数时可以传也可以不传,如果不传将使用默认值 可变参数:可变长度参数 关键字参数:长度可变,但是需要以kv对形式传参 ...

  4. python函数——形参中的:*args和**kwargs

    python函数——形参中的:*args和**kwargs   多个实参,放到一个元组里面,以*开头,可以传多个参数:**是形参中按照关键字传值把多余的传值以字典的方式呈现 *args:(表示的就是将 ...

  5. python的函数介绍 位置参数 关键字参数 默认参数 参数组 *args **kwargs

    1.数学意义的函数与python中的函数 数学意义的函数 y = 2*3+1 x =3 y =7 x是自变量,y是因变量 2.python中定义函数的方法 一个函数往往都是为了完成一个特定的功能而存在 ...

  6. python 函数(实参与形参、传递参数)

    函数 什么是函数?函数是带名字的代码块,用于完成具体的工作.写出一个函数后,就可以一直调用. 定义函数,函数的基本组成: 1.1 向函数传递参数 向函数中传递任意参数,这样打印出的结果就可以根据自己的 ...

  7. python函数中的位置参数、默认参数、关键字参数、可变参数区别

    一.位置参数 调用函数时根据函数定义的参数位置来传递参数. #!/usr/bin/env python # coding=utf-8 def print_hello(name, sex): sex_d ...

  8. python3中匿名函数做参数,匿名函数做实参,eval关键字

    一:说到匿名函数,大家都感到陌生又熟悉,今天我带大家了解一下py3中的匿名函数,以及匿名函数作为函数的参数的情况 主要通过以下实例来说明: 实例一: newarr =[33,44444,6222,88 ...

  9. Python基础之只接收关键字参数的函数

    当我们希望函数的某些参数强制使用关键字参数时,可以将强制关键字参数放到某个*后面就能得到这种效果.比如: def recv(maxsize, *, block): """ ...

随机推荐

  1. FFT【快速傅里叶变换】FWT【快速沃尔什变换】

    实在是 美丽的数学啊 关于傅里叶变换的博客 讲的很细致 图片非常易于理解http://blog.jobbole.com/70549/ 大概能明白傅里叶变换是干吗的了 但是还是不能明白为什么用傅里叶变换 ...

  2. Numpy基础学习与总结

    Numpy类型学习 1.数组的表示 import numpy as np In [2]: #numpy核心是高维数组,库中的ndarray支持多维数组,同时提供了数值运算,可对向量矩阵进行运算 In ...

  3. Python装饰函数

    from time import ctime, sleep def tsfunc(func): def wrappedFunc(): print('[%s] %s() classed' % (ctim ...

  4. create view in view

    CREATE VIEW view_region2role AS ( SELECT region_set_id, region_set_name, GROUP_CONCAT(id) gc_id, GRO ...

  5. Thymeleaf模板引擎的初步使用

    在springboot中,推荐使用的模板引擎是Thymeleaf模板引擎,它提供了完美的Spring MVC的支持.下面就简单的介绍一下Thymeleaf模板引擎的使用. 在controller层中, ...

  6. sql server 存储机制

    1.区段 区段(extent)是用来为表和索引分配空间的基本存储单元.它由8个连续的64KB数据页组成. 基于区段(而不是实际使用空间)分配空间的概念的要点: 一旦区段已满,那么下一记录将要占据的空间 ...

  7. 让人抓狂的MySQL安装-8.0.12版本

    今天一个下午就做了一件事,把MySQL安装成功,安装的过程让人很狂躁.于是一边骂,一边查错,才把这个软件给安装成功了. 详细的安装步骤,这里就不赘述了.参见https://blog.csdn.net/ ...

  8. Selenium定位元素-Xpath的使用方法

    工具 Xpath的练习建议下载火狐浏览器,下载插件Firebug.Firepath. 由于最新版火狐不支持Firebug等扩展工具了,所以需要下载49版以下的版本安装https://ftp.mozil ...

  9. soapUI-JDBC Request

    1.1.1  JDBC Requet 1.1.1.1 概述 – JDBC Request Option Description   JDBC Request TestStep Toolbar 对JDB ...

  10. html05

    1.js中的对象-内置对象-外部对象-自定义对象 2.常见的内置对象有哪些?-String对象-Number对象-Boolean对象-Array对象-Math对象-Date对象-RegExp正则对象- ...