• python 定义函数关键字def 简单介绍


    一  在类中定义的def

    # python中def 是用来干什么的?
    # 可以定义函数,就是定义一个功能。
    class People():
        def __init__(self):
            print("参数self的值是:         " + str(self))
            print("self.__class__ 的值是: " + str(self.__class__))
            print("init 方法,跟着类的加载而执行")
    
        '''
            1 定义函数的关键字  在python中想要定一个函数,必须使用def 关键字
            2 后面跟函数名 xx    括号里面定义各种行参   def run(行参1,行参数2.....)
            3 在class中定义的def  空参时,自动加入self。   在python的类中self代表实例本身,具体来说,是该实例的内存地址。
            4 return [表达式] 结束函数,选择性地返回一个值给调用方。 想要返回啥直接return。
            5 没有return 返回值是一个none
            
            def 函数名(行参1,行参数2.....):     写在类中的def,在没有行参时,编辑器自动加入一个self
                需要的功能
                return  xx          指定一个返回值
        '''
    
        def eat(self):    # 没有行参
            print("吃饭")  # 未指定返回值  是none
    
        def add(a, b):  # 定义两个行参
            c = a + b
            print(c)
            return c    # 返回一个c     指定c作为返回值 ,需要返回啥,就指定啥。

    调用函数,查看效果

    二 聊一聊 python中的赋值 , 类的初始化。首先看一下什么是赋值

    class People():
        def __init__(self):
            print("参数self的值是:         " + str(self))
            print("self.__class__ 的值是: " + str(self.__class__))
            print("init 方法,跟着类的加载而执行")
    
        def eat(self):    # 没有行参
            print("吃饭")  # 未指定返回值  是none
    
        def add(a, b):  # 定义两个行参
            c = a + b
            print(c)
            return c    # 返回一个c     指定c作为返回值 ,需要返回啥,就指定啥。
    
    
    # 这里是将对象people 赋值给 p
    p = People
    print(p)            # 打印的是同一个对象
    print(People)
    
    print(id(p))        # id() 函数用于获取对象的内存地址 二者是相等的
    print(id(People))
    
    print("------")
    
    # 可以用people对象来调用相关的方法
    People.add(2,3)

    实例化走一波

    class People():
        def __init__(self):
            print("参数self的值是:         " + str(self))
            print("self.__class__ 的值是: " + str(self.__class__))
            print("init 方法,跟着类的加载而执行")
    
        def eat(self):    # 没有行参
            print("吃饭")  # 未指定返回值  是none
    
        def add(a, b):  # 定义两个行参
            c = a + b
            print(c)
            return c    # 返回一个c     指定c作为返回值 ,需要返回啥,就指定啥。
    
    
    # 实例化和赋值的区别在于 加上了()
    p = People()                    # 实例化了一个对象people   __init__ 方法会自动执行
    
    print("------------")
    
    print(p)    # 1 打印的是一个实例对象  <__main__.People object at 0x10133dd00>   2 打印的结果和print(self)相同,都是代表这个实例。

    调用der 方法

    class People():
        def __init__(self):
            print(self)
            print(self.__class__)
            print("init 方法,跟着类的加载而执行")
    
        def eat(self):    # 没有行参
            print("吃饭")  # 未指定返回值  是none
    
        def add(a, b):  # 定义两个行参
            c = a + b
            print(c)
            return c    # 返回一个c     指定c作为返回值 ,需要返回啥,就指定啥。
    
    
    # 实例化和赋值的区别在于 加上了()
    p = People()                    # 实例化了一个对象people   __init__ 方法会自动执行
    
    print("------------")
    
    print(p)    # 1 打印的是一个实例对象  <__main__.People object at 0x10133dd00>   2 打印的结果和print(self)相同,都是代表这个实例。
    
    
    p.eat()
    
    p.add(3,4)

  • 相关阅读:
    python
    python中xrange和range的区别
    python
    shell用if
    shell调用shell
    An unhandled exception of type 'System.TypeInitializationException' occurred in System.ServiceModel.dll
    C# 获取存在DataTable1不存在DataTable2的数据的快速方法
    textbox自动提示
    全面理解面向对象的 JavaScript(转载)
    C#中文乱码转换
  • 原文地址:https://www.cnblogs.com/ZXF6/p/14047390.html
Copyright © 2020-2023  润新知