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 ...
随机推荐
- 串口调试利器--Minicom配置及使用详解
因为现在电脑基本不配备串行接口,所以,usb转串口成为硬件调试时的必然选择.目前知道的,PL2303的驱动是有的,在dev下的名称是ttyUSB*. Minicom,是Linux下应用比较广泛的串口软 ...
- ARCGIS 二次开发可以参考的资源(长期更新)
背景: 今天,被领导教导,说是你刚入职,要尽快把项目做起.言语忠恳,而且说不要再在电脑上练习那些小的测试例子了,要直接切入项目,熟悉项目的开发框架,与设计理念.得到,我的负责人(TB)把他做的项目的资 ...
- Copy Records From One Data Block To Another Data Block In Oracle Forms
In this tutorial you will learn to copy the records from one data block to another data block on sam ...
- windows核心编程 DLL技术 【转】
注:本文章转载于网络,源地址为:http://blog.csdn.net/ithzhang/article/details/7051558 本篇文章将介绍DLL显式链接的过程和模块基地址重定位及模块绑 ...
- SSD配置
SSD: Single Shot MultiBox Detector - 运行“ make -j32”时出错: nvcc warning : The 'compute_20', 'sm_20', an ...
- git-for-windows 安装无图标的问题
git-for-windows.ico 安装无图标的问题 一. 问题表现: 桌面图标与右建菜单图标,所是未知文件的图标, 二. 问题解决: 在shard/git/ copy 一个ico 文件(如git ...
- Web终端之使用shellinabox在浏览器进行ssh登录
shellinbox有一个内建的web server作为基本的web ssh client,允许你通过指定的端口访问linux服务器的ssh shell,只要你的浏览器支持AJAX/JS/CSS就可以 ...
- 云数据库 RDS 版怎么创建数据库和账号MySQL 5.7版
若要使用云数据库RDS,您需要在实例中创建数据库和账号.对于MySQL 5.7版本的实例,您需要通过RDS控制台创建一个初始账号,然后可以通过数据管理(DMS)控制台创建和管理数据库.本文将主要介绍在 ...
- 一步一步实现视频播放器client(二)
实现主体界面: 222.png (64.46 KB, 下载次数: 0) 下载附件 保存到相冊 前天 21:02 上传 比較常见的一种布局.以下几个button.点击后 ...
- request 解决中文乱码问题
package request; import java.io.IOException;import javax.servlet.ServletException;import javax.servl ...