一、函数

1、

def test(x):
y=x+1
return y
print(test) #这是打印函数在内存中的地址

过程:就是没有返回值的函数

在python中过程也是函数,就算没哟返回值,也会返回个None

def test(x):
msg="hello"
print(msg,x)
return 1,2,3,'a',["steven","bob"],None t=test("jobs")
print(t) #打印返回的值,是一个元组:(1, 2, 3, 'a', ['steven', 'bob'], None)

总结:返回值个数=0,返回None

返回值=1,返回object

返回值>1,返回tuple

二、可变长参数

1、形参变量只有在被调用时才分配内存单元,调用结束后释放所分配的内存单元,因此。形参只有在函数内部有效

2、实参可以是常量,变量,表达式,函数等。无论是何种类型的量,在进行函数调用的时候,他们必须有确定的值。

def add(x,y,z):
res=x+y+z
print(res) add(a,b,c)

x,y,z是形参,a,b,c是实参

3、位置参数和关键字参数

位置参数必须一一对应,缺一行不行多一行也不行

add(1,2,3)

关键字参数必须一一对应,缺一行不行多一行也不行

add(y=3,x=2,z=8)

如果混合的方式,关键字参数必须在位置参数的右侧

add(1,y=3,4)  #报错
add(1,3,y=4) #报错
add(1,3,z=4)
add(1,3,z=4,y=3) #报错
add(1,z=2,y=9)

4、默认参数

def add(x,y,z=5):
res=x+y+z
print(res)

5、参数组:**字典,*列表

I、*列表

def test(x,*args):
print(x)
print(args)
print(args[2]) test(3,4,5,6,7,8,9) # 相当于把后面的多个实参当成一个元组传给形参

结果:

def test(x,*args):
#print(x)
print(args) test(3,[4,5,6,7]) #结果为:([4, 5, 6, 7],)
test(3,*[4,5,6,7]) #结果为:(4, 5, 6, 7),和test(3,4,5,6,7)一样
test(3) #结果为()

II、**字典

def test(x,**kwargs):
#print(x)
print(kwargs) test(1,a=3,b=4,c=5)
test(1,a=3,b=4,c=5,c=5) #报错,一个参数不能传两个值

III、混合的用法

def test(x,*args,**kwargs):
#print(x)
print(args)
print(kwargs) test(1,10,11,12,13,a=30,b=40,c=50)
test(1,*[10,11,12,13],**{"a":30,"b":40,"c":50}) #写法2

结果:

python学习笔记-函数与可变长参数的更多相关文章

  1. python基础语法5 函数定义,可变长参数

    函数 1.什么是函数 函数就是一种工具. 可以重复调用 2.为什么要用函数 1.防止代码冗(rong)余 2.代码的可读性差 3.怎么用函数 1.定义函数-->制造工具 2.调用函数--> ...

  2. 04 python学习笔记-函数、函数参数和返回值(四)

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print(),我们也可以自己创建函数,这叫做用户自定 ...

  3. Python学习笔记 - 函数参数

    >>> def power(x): ... return x * x ... >>> power(5) 25 >>> def power(x, n ...

  4. Python学习笔记 — 函数

    函数是对程序逻辑进行结构化或过程化的一种编程方法.函数具有两个方面的意义:1)将代码分块,易于管理和阅读:2)最大化代码复用和最小化代码冗余,节省空间,有助于保持一致性. 1. 函数定义 Python ...

  5. Python学习笔记—函数

    函数 我们知道圆的面积计算公式为: S = πr2 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = 73 ...

  6. Python学习笔记---形式参数(parameter)和实际参数(argument)

    def mydemo(name): '函数定义过程中的name是叫形参' #因为它只是一个形式,表示占据一个参数位置 print('传递进来的' + name + '叫做实参,因为它是具体的参数值!' ...

  7. Python学习笔记-函数基础

    函数基础 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 为什么使用函数:减少重复代码.使程序变的可扩展使程序变得易维护 1.定义一个函数 #定 ...

  8. day14 Python函数之可变长参数

    函数参数 1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元.因此,形参只在函数内部有效.函数调用结束返回主调用函数后则不能再使用该形参变量 2.实参可以是常量.变量.表 ...

  9. python学习笔记 函数

    形式: def function(a,b,c=0,*args,**kw)#a,b必选参数,*args可变参数,**kw关键字参数 1.函数的返回值可以是多个参数.多个参数时,实际上返回的是一个tupl ...

随机推荐

  1. echarts 柱状图的选中模式实现-被选中变色和再次选中为取消变色

    方法: function barCharShow(curr_dim,divId,result_data){ mutilDim(curr_dim);//维度信息 var paint = initEcha ...

  2. goroutine简介

    一.goroutine简介 Golang中最迷人的一个优点就是从语言层面就支持并发 在Golang中的goroutine(协程)类似于其他语言的线程 并发和并行 并行(parallelism)指不同的 ...

  3. SparkStreaming 笔记

    简介 SparkStreaming是流式处理框架,是Spark API的扩展,支持可扩展.高吞吐量.容错的准实时数据流处理. 实时数据的来源可以是:Kafka, Flume, Twitter, Zer ...

  4. Java的Regex --正则表达式

    一.概述 正则表达式通常被用来对字符串提供范围性的校验.替换那些符合某个模式(规则)的文本. 正则表达式所对应的类Pattern,所有的正则表达式都是在这个类下创建的.Pattern类用于创建一个正则 ...

  5. RabbitMQ系列文章

    详解 RabbitMQ 管理界面解析框架 (一) RabbitMQ系列(二)深入了解RabbitMQ工作原理及简单使用 RabbitMQ windows安装步骤 RabbitMQ管理页面各种属性详解 ...

  6. BGP(IBGP“内部路由器”和EBGP“外部路由器”)命令解析

    BGP:基于策略的路径向量路由协议. ①:(attribute)属性描述路径. ②:使用TCP(端口179)作为传输协议——(IBGP多使用loopback端口建立update-source) IBG ...

  7. 详解CentOS7安装配置vsftp搭建FTP

    安装配置vsftpd做FTP服务,我们的Web应用使用git管理进行迭代,公共文件软件存储使用开源网盘Seafile来管理,基本够用.想不到FTP的使用的场景,感觉它好像老去了,虽然现在基本没有用到这 ...

  8. Java平台上的AOP实现机制

    Java平台上的AOP实现机制 动态代理(Dynamic Proxy)机制,在运行期间动态的为相应接口生成对应的代理对象.SpringAop默认情况下采用这种机制来实现AOP机能.缺点:相对于编译后的 ...

  9. 如何通过C语言获取主机WLAN下的IPv4地址,MAC地址

    #include "stdio.h" #include "windows.h" void GetHostWLAN_IPv4_AND_MAC(char IPv4[ ...

  10. vue组件化应用构建

    组件系统是 Vue 的另一个重要概念,因为它是一种抽象,允许我们使用小型.独立和通常可复用的组件构建大型应用.仔细想想,几乎任意类型的应用界面都可以抽象为一个组件树: 在 Vue 里,一个组件本质上是 ...