argument python 参数 举例
举例
例1:
def multipute(x,y):
x = 2
y[0] = ['spam']
return x,y
X = 1
L = [1,2]
X,L = multipute(X, L)
print('参数,x 是函数作用域内的变量名,第一个赋值对函数没有影响,它仅仅把本地变量x修改为引用一个完全不同的对象,并没有改变调用者作用域中名称x 的绑定。y也是引用的本地变量名,只有在修改的对象大于比函数生命更长的时候,才会影响到调用者')
print(X,L) 例2:
#默认参数和关键字参数
def f(a,b=2,c=3):
print(a,b,c)
print('###默认参数和关键字参数')
f(1)
f(1,3,4)
例3:
def func1(spam,eggs,toast=0,ham=0):
print(spam,eggs,toast,ham)
func1(1,2,3,4)
func1(toast=1,eggs=2,spam=3) 例4:
##任意参数*args,python 将所有位置相关的参数搜集到一个新的元组中,并将这个元组赋值给args
def e(*args):
print(args)
print('###任意参数*args,python 将所有位置相关的参数搜集到一个新的元组中,并将这个元组赋值给args')
e()
e('a',2) 例5:
##任意参数**args,python 将所有位置相关的参数搜集到一个新的字典中,并将这个字典赋值给args
def m(**args):
print(args) print('##任意参数**args,python 将所有位置相关的参数搜集到一个新的字典中,并将这个字典赋值给args')
m()
m(a=1,b=2,c=3)
例6:
##混合参数演示
def n(a,*pargs,**args):
print(a,pargs,args)
print('##混合参数演示结果')
n(1)
n(1,2,3,4,c=5,m=6)
n(1,34,c=4,m=5) 例7:
###解包参数
def l(a,b,c,d):
print(a,b,c,d)
print('###解包参数')
args = (1,2)
args += (3,4)
l(*args)
args = {'a':2,'b':3,'c':4}
args['d'] =5
l(**args)
l(1,*(2,10),**{'d':5})
l(1,*(2,11),d=10) 例8:
###下面的例子是通过传递任何发送进来的参数来支持具有任意参数的任意函数
def tracer(func2,*pargs,**kargs):
print('calling:', func2.__name__)
return func2(*pargs,**kargs)
def func2(a,b,c,d):
return a +b+c+d
print('###tracer 搜集参数,然后var args调用语法来传递它')
print(tracer(func2,1,2,c=20,d=40))
输出结果
例1: 参数,x 是函数作用域内的变量名,第一个赋值对函数没有影响,它仅仅把本地变量x修改为引用一个完全不同的对象,并没有改变调用者作用域中名称x 的绑定。y也是引用的本地变量名,只有在修改的对象大于比函数生命更长的时候,才会影响到调用者
2 [['spam'], 2] 例2: ###默认参数和关键字参数
1 2 3
1 3 4 例3: 1 2 3 4
3 2 1 0 例4: ###任意参数*args,python 将所有位置相关的参数搜集到一个新的元组中,并将这个元组赋值给args
()
('a', 2) 例5: ##任意参数**args,python 将所有位置相关的参数搜集到一个新的字典中,并将这个字典赋值给args
{}
{'b': 2, 'c': 3, 'a': 1} 例6: ##混合参数演示结果
1 () {}
1 (2, 3, 4) {'m': 6, 'c': 5}
1 (34,) {'m': 5, 'c': 4} 例7: ###解包参数
1 2 3 4
2 3 4 5
1 2 10 5
1 2 11 10 例8: ###tracer 搜集参数,然后var args调用语法来传递它
calling: func2
63
argument python 参数 举例的更多相关文章
- 常用正则表达式最强汇总(含Python代码举例讲解+爬虫实战)
大家好,我是辰哥~ 本文带大家学习正则表达式,并通过python代码举例讲解常用的正则表达式 最后实战爬取小说网页:重点在于爬取的网页通过正则表达式进行解析. 正则表达式语法 Python的re模块( ...
- python 参数类型理解
简介 大家都知道,在java中,函数或者方法的参数在调用时必须对其进行传参操作,也就是所谓的必选参数,也可以称为位置参数,除此之外,python还拥有其他语言不具有的一些参数类型,以下将进行一一介绍. ...
- Python参数笔记
Python参数 1. 普通参数 必须要传入和定义时个数相同的参数 def miao(acfun, bilibili): print(acfun, bilibili) miao(11, 22) > ...
- Python参数基础
Python参数基础 位置参数 通过位置进行匹配,把参数值传递给函数头部的参数名称,顺序从左到右 关键字参数 调用的时候使用参数的变量名,采用name=value的形式 默认参数 为没有传 ...
- Python参数类型以及实现isOdd函数,isNum函数,multi函数,isPrime函数
Python参数类型以及实现isOdd函数,isNum函数,multi函数,isPrime函数 一.Python参数类型 形参:定义函数时的参数变量. 实参:调用函数时使用的参数变量. 参数传递的过程 ...
- python 参数定义库argparse
python 参数定义库argparse 这一块的官方文档在这里 注意到这个库是因为argparse在IDE中和在ipython notebook中使用是有差异的,习惯了再IDE里面用,转到ipyth ...
- <转>Python 参数知识(变量前加星号的意义)
csdn上的牛人就是多,加油 —————————————————————————— 过量的参数 在运行时知道一个函数有什么参数,通常是不可能的.另一个情况是一个函数能操作很多对象.更有甚者,调用自身的 ...
- Python闭包举例
Python闭包的条件: 1.函数嵌套.在外部函数内,定义内部函数. 2.参数传递.外部函数的局部变量,作为内部函数参数. 3.返回函数.外部函数的返回值,为内部函数. 举例如下: def line_ ...
- Python 参数设置
1. 配置文件(ConfigParser模块) 1.1 ConfigParser简介 ConfigParser 是用来读取配置文件的包.配置文件的格式如下:中括号“[ ]”内包含的为section.s ...
随机推荐
- linux svn co 重新迁出
在linux环境下,使用svn co (即svn checkout) 报svn: Authorization failed错误, 使用svn co svn://localhost/temp.cc /d ...
- mac下安装好sencha cmd后每次都需要输入source ~/.bash_profile
解决办法: 在终端输入vim ~/.zshrc加一句 source ~/.bash_profile
- 左手系,右手系,row major, column major
http://www.cnblogs.com/minggoddess/p/3672863.html dx 左手系 row major ogl 右手系 column major 差了个 matrix ...
- git 指令如何撤销一次merge
在使用git指令时难免会发生错误的merge的情况,那么如何在这种情况下回退到错误发生之前的情况? git reflog 指令显示历史的操作 4457e43 HEAD@{0}: reset: movi ...
- linux下内存
MMU由一个或一组芯片组成.其功能是把逻辑地址映射为物理地址,进行地址转换(MMU是CPU的一部分) 机器指令仍然用逻辑地址指定一个操作数的地址或一条指令的地址 每个逻辑地址都由一个段选择符(16位) ...
- AutoCAD如何移动零件和缩放零件图
如下图所示,我想要把这个零件放大并移动到图纸的中央,先全部选中这个零件,方法是在左上角点一下,然后拖出一个矩形包围整个零件 然后点击右侧的缩放命令,底部的命令栏变成指定基点的时候,在这个图纸的右上 ...
- HDoj-1233-还是畅通project-prim算法
还是畅通project Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- 入门--JTBC系统学习(1)
下载代码 JTBC有还例如以下几类 JDK(1.6)+JSP(2.0)+MYSQL/SQLITE ASP.NET(2.0)+ACCESS/SQL SERVER PHP+MYSQL ASP(3.0)+A ...
- 重读金典------高质量C编程指南(林锐)-------第三章 命名规则
3.1 共性规则 规则:标识符应该直观且可以拼读,可进行英语翻译. 规则:标识符的长度需要控制好,不应该太长. 规则:命名规则应该同操作系统或者开发工具等保持一致,比如大小写混用.AddChar ...
- java:注解(一)
什么是注解 注解(Annotation),也叫(metadata)元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法. ...