python 类之间的参数传递方式

yipeiwu_com6年前Python基础

练手记录以及调试步骤.

class A(object):
  def __init__(self,a="A"):
    print("enter",a)
    print("leave",a)
  def mainA(readA,*D):  #如果使用实例化B(),调用mainA,D收集进来D多余的参数.(参考第3点说明)
    print("enter mainA")
    reaA = "内部添加的"
    print("leave mainA")
    return (reaA + "  "+str(D))    
  
class B(A):
  def __init__(self, a =None):
    print("enter B ")
    super().__init__()
    self.read = a 
    print("leave B")
  def main(read,*two,**three): #这个read 与上一个self.read 无任何关联,星号收集参数.
    print("enter main")
    read = 1
    print("leave main")
    return read
  
'''
=================不实例化的调用,可以直接使用 类名.函数名(参数)  ======================
>>> B.main(123)
enter main
leave main
1
>>> fo=B.main(123)
enter main
leave main
>>> print(fo)
1
>>> 
'''
 
 
'''
==================不实例化继承后的A,也可以直接使用======================================
>>> print(B.mainA(12))
我是minA
>>>
'''
 
 
 
 
 
'''
=================================第3点======================================
细节方面注意:
类实例化后,如: x=B()  使用mainA时需要注意有多余的参数
>>> x=B()
enter B 
enter A
leave A
leave B
>>> x.mainA()
enter mainA
leave mainA
'内部添加的  ()'  #这里有一个多余的None 值
>>> 
'''

以上这篇python 类之间的参数传递方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

简单了解python的一些位运算技巧

简单了解python的一些位运算技巧

前言 位运算的性能大家想必是清楚的,效率绝对高。相信爱好源码的同学,在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢?想必最大的原因,是较为难懂。不过,...

Python中使用装饰器和元编程实现结构体类实例

Ruby中有一个很方便的Struct类,用来实现结构体。这样就不用费力的去定义一个完整的类来仅仅用作访问属性。 复制代码 代码如下: class Dog < Struct.new(...

一个计算身份证号码校验位的Python小程序

S = Sum(Ai * Wi), i=0,.......16 (现在的身份证号码都是18位长,其中最后一位是校验位,15位的身份证号码好像不用了) Ai对应身份证号码,Wi则为用于加权...

python解析json串与正则匹配对比方法

现在有如下格式的json串: “detail_time”:”2016-03-30 16:00:00”,”device_id”:”123456”,”os”:”Html5Wap”,”s...

python安装以及IDE的配置教程

python安装以及IDE的配置教程

一、初识Python   Python官方网站:www.python.org   版本:python-3.4.3.amd64   somebody初次接触Python,没有使用Pytho...