• 【1.1】python中一切皆对象


    Python中的所有对象都有三个特点:

    • 身份:每个对象都有一个唯一的身份标识自己,任何对象的身份都可以使用内建函数id()来得到,可以简单的理解为这个值式对象的内存地址

    • 类型:对象的类型决定了对象可以保存什么类型的值,有哪些属性和方法,可以进行哪些操作,遵循怎样的规则。可以使用内建函数 type() 来查看对象的类型

    • 值:对象所表示的数据

     

    在Python中,函数和类也是对象,属于Python中的 “一等公民” 

    1.赋值给一个变量

    1 def get_name(name='zy'):
    2     print(name)
    3 
    4 
    5 # 定义一个函数之后,将函数赋值给一个变量
    6 func = get_name
    7 # 通过变量也可以调用函数
    8 func()
    1 class Person:
    2     def __init__(self):
    3         print('zy')
    4 
    5 
    6 # 将类名赋值给一个变量
    7 my_class = Person
    8 # 通过变量调用类的构造函数
    9 my_class()

    2.可以添加到集合对象中

     1 #!/user/bin/env python
     2 # -*- coding:utf-8 -*-
     3 obj_list = []
     4 
     5 
     6 def get_name(name='zy'):
     7     print(name+' in function')
     8 
     9 
    10 class Person:
    11     def __init__(self):
    12         print('zy in class')
    13 
    14 
    15 # 将函数和类赋值给一个变量
    16 my_func = get_name
    17 my_class = Person
    18 
    19 # 将函数添加到list中
    20 obj_list.append(my_func)
    21 obj_list.append(my_class)
    22 print(obj_list)

    3.可以作为参数传递给函数

      4.可以当作函数的返回值

     1 #!/user/bin/env python
     2 # -*- coding:utf-8 -*-
     3 
     4 # 利用一个装饰器来解释这个3, 4
     5 
     6 
     7 def decorator(func):
     8     def wrapper():
     9         print('--decorator--')
    10         func()
    11     return wrapper()
    12 
    13 
    14 @decorator
    15 def func():
    16     print('hello world')
    --decorator--
    hello world
    

        简单来说:Python 中的一切都可以赋值给变量或者作为参数传递给函数。

  • 相关阅读:
    Linux磁盘分区、挂载
    crond任务调度
    Form组件使用
    Django路由系统
    Django中模板简单使用
    ORM常用操作
    IO多路复用
    vscode必装插件
    Flask-RESTful扩展
    flask-caching
  • 原文地址:https://www.cnblogs.com/zydeboke/p/11218555.html
Copyright © 2020-2023  润新知