zoukankan      html  css  js  c++  java
  • 面向对象相关

    1. 类变量和实例变量的区别?

      类变量不通过实例化后可直接打印输出,类变量存储在类的内存中

      如果同时有类变量和实例变量,程序执行时,首先去找实例变量,如果实例变量不存在,就去执行类变量

    2. super的作用?

      不需要明确给出任何基类的名字,它会自动找到所有直接基类,及其对应的方法.用于继承

    3. isinstance和type的区别?

      isinstance 是判断两个函数之间的逻辑父子关系

      

    class Base():
        pass
    class Foo(Base):
        pass
    class Bar(Foo):
        pass
    print(issubclass(Foo,Base)) # 判断是否子类
    print(issubclass(Bar,Base)) # 判断是否是子孙类
    print(issubclass(Base,Foo))
    

      type 是判断当前的类型,是方法,还是函数

     

     1 class Foo(object):
     2     pass
     3 class Bar():
     4     pass
     5 def func(*args):
     6     foo_counter = 0
     7     bar_counter = 0
     8     for item in args:
     9         if type(item) == Foo:
    10             foo_counter += 1
    11         elif type(item) == Bar:
    12             bar_counter += 1
    13     return foo_counter,bar_counter
    14 res = func(Foo(),Bar(),Foo())
    15 print(res)
    16 v1,v2 = func(Foo(),Bar(),Foo())
    17 print(v1,v2)
  • 相关阅读:
    RavenScheme简介
    我终于理解了LISP『代码即数据|数据即代码』的含义
    汉编随想(一)
    SICP的一些练习题
    linux下Script小计
    vscode小计
    软硬连接区别
    find过滤大小执行操作
    pyqt5和qt designer安装
    pyenv和virtualenv结合使用管理多python环境
  • 原文地址:https://www.cnblogs.com/wangjs/p/10831254.html
Copyright © 2011-2022 走看看