Post

WIP:Python备忘

引文均来自网络,如有侵权请联系删除

在python的解释器内部,当我们调用t.prt()时,实际上Python解释成Test.prt(t),也就是说把self替换成类的实例。

e.g. “水果”里有一种“苹果”,当我们“吃苹果”的时候,其实是把“苹果”代入到“吃水果”这一行为中,而非“苹果”自己又产生了一个单独的“吃”行为。这就是self在方法中的作用。

这似乎是面向对象的核心精神之一。

构建方法就是__init__,其实就是这个类默认的初始化;前后双下划线代表的是特别的函数

需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__name__、__score__这样的变量名。

如果要让内部属性不被外部访问,可以把属性的名称前加上两个下划线,在Python中,实例的变量名如果以__开头,就变成了一个私有变量(private),只有内部可以访问,外部不能访问。

有些时候,你会看到以一个下划线开头的实例变量名,比如_name,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。

要单纯地运行一个方法,使用_ = function(),其中_可以用任何没有影响的变量名代替,这一变量仅仅是形式上的。

This post is licensed under CC BY 4.0 by the author.