第2章 python中一切皆对象

python中一切皆对象
函数和类也是对象,属于python的一等公民

什么是一等公民
1.赋值给一个变量
2.可以添加到集合对象中
3.可以作为参数传递给函数
4.可以当作函数的返回值

def ask(name="bobby"):
    print(name)
    
my_func = ask
my_func("bobby")

运行结果

class Person:
    def __init__(self):
        print("bobby")

my_class = Person
my_class()

运行结果

def ask(name="bobby"):
    print(name)

class Person:
    def __init__(self):
        print("bobby1")

obj_list = []
obj_list.append(ask)
obj_list.append(Person)
for item in obj_list:
    print(item())
# 函数默认返回None
# 类默认返回类的对象

运行结果

# 装饰器的实现原理
def ask(name="bobby"):
    print(name)

def decorator_func():
    print("dec start")
    return ask

my_ask = decorator_func()
my_ask("tom")

运行结果

type, object 和class的关系
type -> int -> 1

type -> class - > obj

object 是最顶层基类

type也是一个类,同时type也是一个对象

type, object 和class的关系图

python中的常见内置类型
对象的三个特征:身份 类型 值

None(全局只有一个)

数值:int float complex bool

迭代类型

序列类型:
list
bytes bytearray memoryview(二进制序列)
range
tuple
str
array

映射类型(dict)

集合
set
frozenset

上下文管理类型(with)

其他
模块类型,class和实例,函数类型,方法类型,代码类型,object对象,type类型,elipsis(省略号) 类型,elipsis(省略号) 类型、notimplemented类型

猜你喜欢

转载自www.cnblogs.com/loongll/p/11273487.html
今日推荐