Python函数参数传递以及变量作用域
来源:互联网 发布:上海圣剑网络 徐轶群 编辑:程序博客网 时间:2024/05/17 02:05
1.传递多个参数
使用*号,表示函数接受多个参数
>>> def f(*args):print args>>> f(1)(1,)>>> f(1,2,3)(1, 2, 3)>>> f()()>>> f(1,2)(1, 2)
2.传递字典参数
使用**号,表示传递的是字典参数>>> def f1(**args):print args>>> f1(a=1,b=2){'a': 1, 'b': 2}
3.将函数名作为参数传递
#coding=utf-8 #用来支持中文,=号前后不能有空格#minmax.pydef minmax(test,*args): res=args[0] for arg in args[1:]: #循环args中内容副本 if test(arg,res): res=arg return resdef lessthan(x,y):return x<ydef grtrthan(x,y):return x>yprint minmax(lessthan,4,7,9,22,2,18)print minmax(grtrthan,4,7,9,22,2,18)
4.传递混合参数
>>> def f2(a,*pargs,**kargs):print a,pargs,kargs>>> f2(1,2,3,4,5,x=11,y=12)1 (2, 3, 4, 5) {'y': 12, 'x': 11}
5.练习--字符串∪和∩运算
>>> def intersct(*args):res=[]for x in args[0]:for other in args[1:]:if x not in other:breakelse:res.append(x)return res>>> def union(*args):res=[]for seq in args:for x in seq:if not x in res:res.append(x)return res>>> s1,s2,s3="SPAM","SCAM","SLAM">>> intersct(s1,s2)['S', 'A', 'M']>>> union(s1,s2)['S', 'P', 'A', 'M', 'C']
6.类成员变量和实例变量
>>> class C: X = 33 def m(self): X = 44 self.X = 55>>> obj = C()>>> print obj.X33>>> obj.m()>>> print obj.X55>>> C.X33
6.练习--打印类的继承关系树
>>> def classtree(cls,indent):print '.'*indent,cls.__name__for supercls in cls.__bases__:classtree(supercls,indent+3)>>> def instancetree(inst):print 'Tree of ',instclasstree(inst.__class__,3)>>> def selftest():class A:passclass B(A):passclass C(A):passclass D(B,C):passclass E:passclass F(D,E):passinstancetree(B())instancetree(F())>>> selftest()Tree of <__main__.B instance at 0x012E1A08>... B...... ATree of <__main__.F instance at 0x012E1A08>... F...... D......... B............ A......... C............ A...... E
- Python函数参数传递以及变量作用域
- python学习笔记11(函数二): 参数的传递、变量的作用域
- javascript基础:函数传递参数的方式、参数数组、变量范围(变量作用域)
- python 字典怎样当作参数传入函数里,以及在函数里的一些遍历。变量的作用域。
- Python 函数定义以及参数传递
- python函数-变量作用域
- Python的变量赋值及函数参数传递规则
- 理解函数以及变量作用域问题
- python 函数参数传递
- python 函数参数传递
- python函数参数是值传递还是引用传递(以及变量间复制后是否保持一致):取决于对象内容可变不可变
- JavaScript 函数总体概述(函数声明/参数传递/返回值/加载/变量和作用域/变量声明提升/匿名函数/回调函数)
- python 中模块(model)概念的引入 以及 函数变量的作用域
- python函数变量的作用域
- python --- 变量和函数的作用域
- Python函数与变量作用域
- python函数作用域以及LEGB原则
- Python 变量作用域问题 函数名.变量名
- Nim游戏博弈(收集完全版)
- 设计模式---->单一职责原则
- Android 添加JNI文件到源码中
- virsh命令调用流程(2)
- 快速幂取模(二分思想)
- Python函数参数传递以及变量作用域
- USB 主机在请求HID 设备的配置描述符时,设备首先返回的描述符为:
- 为 Ubuntu 上的 PHP 安装 APC,提升应用速度
- virsh命令调用流程(3)
- php函数
- 图片拖出边框删除
- 面向对象的应用(1)
- lnmp_install.sh
- C++函数对象与函数指针不同之处