python学习_python里的self用法

self的用法

python学习_python里的self用法

1.本身 指的是实例自身(Instance)(推选进修:Python视频教程)

2.因为"本身"这个词,都是绝对而言的"别的"说的,指的是类class,以及别的变量,比方部分变量,全局变量

此处的self,是个工具(Object),是以后类的实例。

Python中为何要有self

正在类的代码(函数)中,需求拜访以后的实例中的变量以及函数的,即拜访(实例)Instance中的

对于应的变量(属性,property):Instance.ProperyNam,去读取以前的值以及写入的值

(2)挪用对于应的函数(function):Instance.function(),即履行对于应的举措

而需求拜访实例的变量以及挪用实例的函数,固然需求对于应的实例Instance工具自身

而Python中就规则好了,函数的第一个参数,就必需是实例工具自身,而且,倡议,把其名写为self

#! usr/bin/python3.7
# -*- coding:utf-8 -*-
"""
class Person(object):
    def __init__(self, name, lang, website):
        self.name = name
        self.lang = lang
        self.website = website
        print('self', self)
        print('type of self', type(self))

class Dog(object):
    def __init__(self, name, dog_type):
        self.name = name
        self.dog_type = dog_type
#   def sayhi():
#   print("hello I am dog, my name is ",self.name)
    def sayhi(self):
        print("hello ,I am dog, my name is ",self.name)

if __name__ == '__main__':
    p = Person('xiaoliang', 'hanyu', 'www.mutual-helper.com')
    d = Dog('Caty', 'Firce')
    """当顺序运转时,会报错,takes 0 positional arguments but 1 was given
       这是由于这个函数没有需求参数,可是函数却被传送了一个参数,但是咱们挪用sayhi()函数的时分,
       并无写参数。为何会呈现如许的参数Error
        这是由于"每个相联系关系的办法挪用都主动传送实参self,它是一个指向实例自身的援用__init__中的
        参数self会主动传送给sayhi(),而sayhi()正在界说的时分不形参,就会报错。
    """
    d.sayhi()

#   d.sayhi(self),也会报错

更多Python相关技能文章,请拜访Python教程栏目停止进修!

以上便是python里的self用法的具体内容,更多请存眷酷吧易资源网别的相关文章!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

酷吧易资源网 python教程 python学习_python里的self用法 https://www.kubayi.com/4881.html

常见问题

相关文章

评论
暂无评论