在Python中,一切皆对象,面向对象的更彻底。class是对象,函数是对象,代码和模块也是对象,其中类(相当于模板)和函数属于Python的一等公民,所以可以动态进行修改类的属性等。
Python一等公民有这些特征:
1、赋值给一个变量。
2、可以添加到集合对象中。
3、可以作为参数传递给函数。
4、可以当做函数的返回值。
def ask(name='lucky'):
print(name)
class Person(object):
def __init__(self):
print("lucky2")
obj_list = []
my_lucky = ask
my_lucky("my_lucky")
# 结果:my_lucky
obj_list.append(ask)
obj_list.append(Person)
for i in obj_list:
print(i())