所有基础文章修改完毕

This commit is contained in:
TwoWater
2019-10-14 17:57:06 +08:00
parent 95ad977818
commit d7a75dac9e
48 changed files with 387 additions and 145 deletions

View File

@@ -1,10 +1,14 @@
# 五、作用域 #
学习过 Java 的同学都知道Java 的类里面可以给方法和属性定义公共的( public )或者是私有的 private ,这样做主要是为了我们希望有些函数和属性能给别人使用或者只能内部使用。 通过学习 Python 中的模块,其实和 Java 中的类相似,那么我们怎么实现在一个模块中,有的函数和变量给别人使用,有的函数和变量仅仅在模块内部使用呢?
学习过 Java 的同学都知道Java 的类里面可以给方法和属性定义公共的( public )或者是私有的 private ,这样做主要是为了我们希望有些函数和属性能给别人使用或者只能内部使用。
Python 中,是通过 `_` 前缀来实现的。正常的函数和变量名是公开的public可以被直接引用比如abcni12PI等类似`__xxx__`这样的变量是特殊变量,可以被直接引用,但是有特殊用途,比如上面的 `__name__` 就是特殊变量,还有 `__author__` 也是特殊变量,用来标明作者。注意,我们自己的变量一般不要用这种变量名;类似 `_xxx``__xxx` 这样的函数变量就是非公开的private不应该被直接引用比如 `_abc` `__abc` 等;
通过学习 Python 中的模块,其实和 Java 中的类相似,那么我们怎么实现在一个模块中,有的函数和变量给别人使用,有的函数变量仅仅在模块内部使用呢?
注意,这里是说不应该,而不是不能。因为 Python 种并没有一种方法可以完全限制访问 private 函数或变量,但是,从编程习惯上不应该引用 private 函数或变量
在 Python 中,是通过 `_` 前缀来实现的。正常的函数和变量名是公开的public可以被直接引用比如abcni12PI等类似`__xxx__`这样的变量是特殊变量,可以被直接引用,但是有特殊用途,比如上面的 `__name__` 就是特殊变量,还有 `__author__` 也是特殊变量,用来标明作者
注意,我们自己的变量一般不要用这种变量名;类似 `_xxx``__xxx` 这样的函数或变量就是非公开的private不应该被直接引用比如 `_abc` `__abc` 等;
**这里是说不应该,而不是不能。因为 Python 种并没有一种方法可以完全限制访问 private 函数或变量,但是,从编程习惯上不应该引用 private 函数或变量。**
比如:
@@ -48,4 +52,6 @@ DiamondVIP2
------------------------
最后扯淡,欢迎加我微信:`androidwed`,进入微信Python讨论群一起学习讨论。现在微信群只有50几个人.
最后扯淡,欢迎加我微信:`thinktoday2019`, 进入微信 Python 讨论群