Python---函数参数---王伟
#定义函数
def function():
print("hello world")
#调用函数
function()
hello world
```
#1.函数参数类型:实参、形参和无参数
#2.实参:函数调用时候参数,实参可以传递任意类型的对象
#3.形参:函数定义时的参数名,没有实际意义
print("%s"%self)
function("hello world")
#"hello world"为实参,self为形参
hello world
```
#1.位置参数:调用函数时根据函数定义的参数位置来传递参数
#2.调用函数时传入实际参数的数量和位置都必须和定义函数时保持一致
#3.实参和形参数量必须一致
def function(a,b):
result = a + b
print(result)
function(10,20)
30
```
#1.不按照形参定义的顺序去传递,而直接根据参数名去传递参数
#2.关键字参数可以按照不同顺序排序
#3.实参和形参数量必须一致
def function(a,b,c):
result = a + b + c
print(result)
function(c=10,a=5,b=15)
30
```
#1.为参数提供默认值,调用函数时可传可不传该默认参数的值,传入参数会代替默认值
#2.默认值参数必须放在没有默认值参数之后
print("名字是:%s,性别是:%s"%(name,sex))
function("zahng")#没有指定sex,会使用默认值boy
function("zhang","girl")#指定sex,使用指定的参数girl
名字是:zahng,性别是:boy
名字是:zhang,性别是:girl
```
#1.在定义函数时,可以在形参前边加上一个*,这样这个形参将会获取到所有的实参(位置参数)(args可以为其他str,通常使用*args)
#2.将所有的实参保存到一个元组中
#3.带*的形参只能有一个,可以和其他参数配合使用,只能接收位置参数,而不能接收关键字参数
#4.不定长参数(*args)不是必须写在最后,若果写在其他形参之前,不定长参数(*args)后的所有参数,必须关键字参数跟随在位置参数后面,以关键字参数的形式传递
#5.如果在形参的开头直接写一个*,则要求我们的所有的参数必须以关键字参数的形式传递
def function(a,b,*args):
print(a,b,args)
function(2,3,4,5,6,7,8,9)
#输出结果
2 3 (4, 5, 6, 7, 8, 9)
print(a,b,args)
function(4,5,6,7,8,9,a=2,b=3)#a,b形参,必须要以关键字参数传递
#输出结果
2 3 (4, 5, 6, 7, 8, 9)
def function(*,a,b):
print(a,b)
function(a=2,b=3)
#输出结果
2,3
```
#1.在定义函数时,可以在形参前边加上2个**,这样这个形参将会获取到所有的关键字(args可以为其他str,通常使用*args)
#2.**形参可以接收关键字参数,它会将这些参数统一保存到一个字典中,字典的key就是参数的名字,字典的value就是参数的值
#3.**形参只能有一个,并且必须写在所有参数的最后
print(a,b,kwargs)
function(a=1,b="qaq",c=4,d="qwer",e=5)
1 qaq {'c': 4, 'd': 'qwer', 'e': 5}
```
#位置顺序:位置参数、默认参数、关键字参数、不定长参数
def function(a,b=10,*args,**kwargs):
print(a,b,args,kwargs)
function(2,12,32,"aa",name="kimi",age=8)
```
Python---函数参数---王伟的更多相关文章
- Python函数参数默认值的陷阱和原理深究"
本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
- python函数参数的pack与unpack
python函数参数的pack与unpack 上周在使用django做开发的时候用到了mixin(关于mixin我还要写一个博客专门讨论一下,现在请参见这里),其中又涉及到了一个关于函数参数打包(pa ...
- Python 关于Python函数参数传递方式的一点探索
关于Python函数参数传递方式的一点探索 by:授客 QQ:1033553122 实践代码 #!/usr/bin/env python # -*- coding:utf-8 -*- __author ...
- python 函数参数介绍
python 函数参数介绍 python 使用过程总,总会遇到 *args,**kw形式的参数,总是一头雾水,而且网上介绍的或是叫法不一,为此专门深入实践进而了解了函数参数的使用 具体请看代码 #-* ...
- python函数参数类型及其顺序
根据inspect模块官文文档中关于函数参数类型的相关说明,python函数参数共有五种类型,按顺序分别为:POSITIONAL_ONLY.POSITIONAL_OR_KEYWORD.VAR_POSI ...
- Python 函数参数类型大全(非常全!!!)
Python 函数参数类型大全(非常全!!!) 1.在python编写程序里面具有函数文档,它的主要作用是为了让别人可以更好的理解你的函数,所以这是一个好习惯,访问函数文档的方式是: MyFuncti ...
- Python函数参数默认值的陷阱和原理深究(转)
add by zhj: 在Python文档中清楚的说明了默认参数是怎么工作的,如下 "Default parameter values are evaluated when the func ...
- python函数-参数
python函数-参数 实验室 # 演示形参是可变类型 def register(name, hobby, hobby_list=[]): hobby_list.append(hobby) print ...
- 详解Python函数参数定义及传参(必备参数、关键字参数、默认可省略参数、可变不定长参数、*args、**kwargs)
详解Python函数参数定义及传参(必备参数.关键字参数.默认可省略参数.可变不定长参数.*args.**kwargs) Python函数参数传参的种类 Python中函数参数定义及调用函数时传参 ...
- Python函数参数详解
Python函数参数详解 形参与实参 什么是形参 在定义函数阶段定义的参数称之为形式参数,简称形参,相当于变量名. 什么是实参 在调用函数阶段传入的值称为实际参数,简称实参.相当于"变量值& ...
随机推荐
- finereport 通过条件弹出 alert进行提示
function convertDateFromString(dateString) { if (dateString) { var date = new Date(dateString.replac ...
- 【转帖】SQL Server 各版本发布时间和开发代号
SQL Server 各版本发布时间和开发代号 2019年01月23日 11:07:44 努力挣钱娶媳妇的苗同学 阅读数 278 https://blog.csdn.net/weixin_446098 ...
- windows 装mac
必备条件: 1.vmware虚拟机 2.给相应版本虚拟机打mac补丁 3.用securable检测CPU支持虚拟化设置 4.mac镜像文件 5.这时候还不能启动虚拟机,还需要在引导文件里面进行参数修改 ...
- GitHub从小白到熟悉<五>
GitHub 主页
- 小白基础Python重要的字符串详解String的内置方法
String的内置方法: st='hello world {name} is {age}' {} 特殊内容需要识别format print(st.count('1')) 统计元素个数 print ...
- Hive 教程(五)-参数配置
配置基本操作 hive> set; 查看所有配置hive> set key: 查看某个配置hive> set key value: 设置某个配置 我们可以看到一些 hadoop 的配 ...
- ASP.Net Core下Authorization的几种方式 - 简书
原文:ASP.Net Core下Authorization的几种方式 - 简书 ASP.Net Core下Authorization的几种方式 Authorization其目标就是验证Http请求能否 ...
- Git复习(十三)之git revert用法及与git reset区别
git revert用法以及与git reset的区别 git revert用法 git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销 作为一 ...
- luogu题解 P1707 【刷题比赛】矩阵加速递推
题目链接: https://www.luogu.org/problemnew/show/P1707 分析: 洛谷的一道原创题,对于练习矩阵加速递推非常不错. 首先我们看一下递推式: \(a[k+2]= ...
- O004、启动第一个KVM虚机
参考https://www.cnblogs.com/CloudMan6/p/5249270.html 本节演示如何使用 virt-manager 启动 KVM 虚机, 提前下载一个 cirro ...