在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ 五、作用域
二、Enum 的源碼
前言
一、Python 模塊簡介
一、List(列表)
五、匿名函數(shù)
三、什么是元類
二、循環(huán)語句
二、模塊的使用
三、第一個(gè) Python 程序
線程與進(jìn)程
Python
三、條件語句和循環(huán)語句綜合實(shí)例
四、對(duì)象的描述器
三、類的屬性
一、迭代
五、迭代器和生成器綜合例子
六、運(yùn)算符相關(guān)的魔術(shù)方法
一、枚舉類的使用
前言
一、簡明概述
二、Python 的基本數(shù)據(jù)類型
多線程編程
五、作用域
四、包
四、枚舉的比較
四、Python 中的變量
六、類的多態(tài)
一、Python 中類也是對(duì)象
一、Python 的 Magic Method
前言
四、生成器
一、面向?qū)ο蟮母拍?/span>
五、類的繼承
二、類
二、使用 <code>type()</code> 動(dòng)態(tài)創(chuàng)建類
進(jìn)程
二、set
三、主模塊和非主模塊
一、字典(Dictionary)
前言
前言
前言
前言
四、集成開發(fā)環(huán)境(IDE): PyCharm
前言
四、函數(shù)的參數(shù)
三、lsit 生成式(列表生成式)
四、自定義元類
四、類的方法
二、函數(shù)傳值問題
二、注釋
一、條件語句
一、Python 語法的簡要說明
三、函數(shù)返回值
三、基本數(shù)據(jù)類型轉(zhuǎn)換
三、屬性的訪問控制
二、Python 的安裝
前言
三、命名規(guī)范
一、Python 自定義函數(shù)的基本步驟
三、自定義類型的枚舉
五、自定義容器(Container)
二、Python 迭代器
前言
二、tuple(元組)
一、Python 簡介
前言
前言
前言
二、構(gòu)造(<code>__new__</code>)和初始化(<code>__init__</code>)
前言

五、作用域

學(xué)習(xí)過 Java 的同學(xué)都知道,Java 的類里面可以給方法和屬性定義公共的( public )或者是私有的 ( private ),這樣做主要是為了我們希望有些函數(shù)和屬性能給別人使用或者只能內(nèi)部使用。 通過學(xué)習(xí) Python 中的模塊,其實(shí)和 Java 中的類相似,那么我們?cè)趺磳?shí)現(xiàn)在一個(gè)模塊中,有的函數(shù)和變量給別人使用,有的函數(shù)和變量僅僅在模塊內(nèi)部使用呢?

在 Python 中,是通過 _ 前綴來實(shí)現(xiàn)的。正常的函數(shù)和變量名是公開的(public),可以被直接引用,比如:abc,ni12,PI等;類似__xxx__這樣的變量是特殊變量,可以被直接引用,但是有特殊用途,比如上面的 __name__ 就是特殊變量,還有 __author__ 也是特殊變量,用來標(biāo)明作者。注意,我們自己的變量一般不要用這種變量名;類似 _xxx__xxx 這樣的函數(shù)或變量就是非公開的(private),不應(yīng)該被直接引用,比如 _abc ,__abc 等;

注意,這里是說不應(yīng)該,而不是不能。因?yàn)?Python 種并沒有一種方法可以完全限制訪問 private 函數(shù)或變量,但是,從編程習(xí)慣上不應(yīng)該引用 private 函數(shù)或變量。

比如:

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

def _diamond_vip(lv):
    print('尊敬的鉆石會(huì)員用戶,您好')
    vip_name = 'DiamondVIP' + str(lv)
    return vip_name

def _gold_vip(lv):
    print('尊敬的黃金會(huì)員用戶,您好')
    vip_name = 'GoldVIP' + str(lv)
    return vip_name

def vip_lv_name(lv):
    if lv == 1:
        print(_gold_vip(lv))
    elif lv == 2:
        print(_diamond_vip(lv))

vip_lv_name(2)

輸出的結(jié)果:

尊敬的鉆石會(huì)員用戶,您好
DiamondVIP2

在這個(gè)模塊中,我們公開 vip_lv_name 方法函數(shù),而其他內(nèi)部的邏輯分別在 vip_lv_namevip_lv_name private 函數(shù)中實(shí)現(xiàn),因?yàn)槭莾?nèi)部實(shí)現(xiàn)邏輯,調(diào)用者根本不需要關(guān)心這個(gè)函數(shù)方法,它只需關(guān)心調(diào)用 vip_lv_name 的方法函數(shù),所以用 private 是非常有用的代碼封裝和抽象的方法

一般情況下,外部不需要引用的函數(shù)全部定義成 private,只有外部需要引用的函數(shù)才定義為 public。


最后扯淡,歡迎加我微信:androidwed,進(jìn)入微信Python討論群,一起學(xué)習(xí)討論?,F(xiàn)在微信群只有50幾個(gè)人.