www.whkt.net > python如何给函数传递类

python如何给函数传递类

别在类的定义时将类名赋值,调用时才可以.class fun: print "hi,world" def __init__(self, params): fun2 = fun fun2 如果想用switch,python中惯用字典来实现d = {key1:value1,key2:value2},通过判断d[key1]的值,来选择分支.

Python中函数参数的传递是通过“赋值”来传递的.但这条规则只回答了函数参数传递的“战略问题”,并没有回答“战术问题”,也就说没有回答怎么赋值的问题.函数参数的使用可以分为两个方面,一是函数参数如何定义,二是函数在调用

Python中函数的参数传递1.普通的参数传递>>> def add(a,b):return a+b>>> print add(1,2)3>>> print add('abc','123')abc1232.参数个数可选,参数有默认值的传递>>> def myjoin(string,sep='_'):return sep.join(string)>>> myjoin('Test')'T_e_s_t'>>>

python不允许程序员选择采用传值还是传引用.Python参数传递采用的肯定是“传对象引用”的方式.这种方式相当于传值和传引用的一种综合.如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过“传引用”来传递对象.如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,就不能直接修改原始对象--相当于通过“传值'来传递对象.原文来自:https://www.cnblogs.com/loleina/p/5276918.html

原帖由 limodou 于 2006-7-4 15:12 发表python不支持直接的引用参数传递,因为python可以一次返回多个值,所以这个问题在python提得不多.可以传入可变参数,然后在函数中进行修改,如list, dict, object等. 问一个,这个应该就是传递引用吧.只有象整数,字符川,元组之类的才是传值的.

在b中直接使用a.变量名即可.如果需要返回值,在函数最后使用return 变量即可,缺省返回是None.

1. 全局变量可以直接在函数里使用2. 通过func(argv) 这种方式传递

无论是类的构造函数还是类的方法函数,都与普通函数一样可以使用列表传入多个实参.class MyClass:.def __init__(self:a,b,c):..pass对于MyClass,我们一般使用下列方式实例化:x=MyClass(1,2,3)如果我们实例化使用的参数在列表l中,可以这样做:l=[1,2,3]x=MyClass(*l)

class hello(object): def world(self,msg): print msgc = hello()c.world('hello world')

如果你用C给Matlab写过MEX程序,那么这个问题是很容易理解的(好像每次讨论Python问题时我总是把Matlab搬了出来…… 《在Matlab中把struct当成Python中的Dictionary使用》《Matlab和Python的几种数据类型的比较》). 既然提到了MEX

网站地图

All rights reserved Powered by www.whkt.net

copyright ©right 2010-2021。
www.whkt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com