文鏈接:https://blog.csdn.net/feikon2/article/details/79126774 1. 變量命名總結(jié): - 1.單下劃線開頭變量:protected - 2.雙下劃線開頭變量:private - 3.雙下劃線開頭,雙下劃線結(jié)尾:系統(tǒng)內(nèi)置變量 2. 函數(shù)命名總結(jié): - 1.私有方法:小寫和一個(gè)前導(dǎo)下劃線 - 2.特殊方法(魔術(shù)方法):小寫和兩個(gè)前導(dǎo)下劃線,兩個(gè)后置下劃線 - 3.函數(shù)參數(shù):小寫和下劃線,缺省值等號(hào)兩邊無空格 3. 類名稱命名: - 類總是使用駝峰格式命名,即所有單詞首字母大寫其余字母小寫。 #!/usr/bin/env python # -*- coding: utf-8 -*- """ __Title__ = '下劃線變量與命名' __Author__ = 'Zhangyf' __Author_email__ ='hpuyanfeng@126.com' __Time__ = '2018/1/22' """ # 變量命名總結(jié): # 1.單下劃線開頭變量:protected # 2.雙下劃線開頭變量:private # 3.雙下劃線開頭,雙下劃線結(jié)尾:系統(tǒng)內(nèi)置變量 """ 單下劃線開頭變量 _xxx,單下劃線開頭的變量,標(biāo)明是一個(gè)受保護(hù)(protected)的變量,原則上不允許直接訪問,但外部類還是可以訪問到這個(gè)變量。 這只是程序員之間的一個(gè)約定,用于警告說明這是一個(gè)私有變量,外部類不要去訪問它。 print(stu._name) 當(dāng)要輸入_name時(shí),pycharm不會(huì)進(jìn)行_name的提示 print(stu.age) 當(dāng)要顯示age時(shí),pycharm會(huì)進(jìn)行age的提示 """ class Student: def __init__(self, name, sex): self._name = name self.sex = sex stu = Student('zyf', 'Male') print(stu._name) # 單下劃線protected的變量,原則上不允許直接訪問 輸出:zyf print(stu.sex) # age可以直接訪問 輸出:Male """ 雙下劃線開頭 __xxx,雙下劃線開頭的,表示的是私有類型(private)的變量。 只能是允許這個(gè)類本身進(jìn)行訪問了, 連子類也不可以. 用于命名一個(gè)類屬性(類變量),調(diào)用時(shí)名字被改變 (在類Student內(nèi)部,__name變成_Student__name,如 self._Student__name) 雙下劃線開頭的實(shí)例變量是不是一定不能從外部訪問呢?其實(shí)也不是。仍然可以通過_Student__name來訪問__name變量: """ class Person: def __init__(self, name): self.__name = name per = Person('zyf2') print(per._Person__name) # 輸出zyf2 但是無法直接訪問__name """ 雙下劃線開頭,并且以雙下劃線結(jié)尾 __xxx__,以雙下劃線開頭,并且以雙下劃線結(jié)尾的,是內(nèi)置變量. 內(nèi)置變量是可以直接訪問的,不是 private 變量,如__init__,__import__或是__file__。 ★不要自己定義這類變量 xxx_,單下劃線結(jié)尾的變量一般只是為了避免與 Python 關(guān)鍵字的命名沖突 USER_CONSTANT,大寫加下劃線,對(duì)于不會(huì)發(fā)生改變的全局變量,使用大寫加下劃線 """ # 函數(shù)命名總結(jié): # 1.私有方法:小寫和一個(gè)前導(dǎo)下劃線 # 2.特殊方法(魔術(shù)方法):小寫和兩個(gè)前導(dǎo)下劃線,兩個(gè)后置下劃線 # 3.函數(shù)參數(shù):小寫和下劃線,缺省值等號(hào)兩邊無空格 """ 函數(shù) 總體而言應(yīng)該使用,小寫和下劃線 私有方法 : 小寫和一個(gè)前導(dǎo)下劃線 這里和私有變量一樣,并不是真正的私有訪問權(quán)限。 同時(shí)也應(yīng)該注意一般函數(shù)不要使用兩個(gè)前導(dǎo)下劃線(當(dāng)遇到兩個(gè)前導(dǎo)下劃線時(shí),Python 的名稱改編特性將發(fā)揮作用)。特殊函數(shù)后面會(huì)提及。 #特殊方法 : 小寫和兩個(gè)前導(dǎo)下劃線,兩個(gè)后置下劃線 #這種風(fēng)格只應(yīng)用于特殊函數(shù),比如操作符重載等。 #函數(shù)參數(shù) : 小寫和下劃線,缺省值等號(hào)兩邊無空格 """ # 私有方法 class PrivateCase: @staticmethod def _secrete(): print(r"Don't test me") priC = PrivateCase() priC._secrete() # _secrete為protected member # 特殊方法(魔術(shù)方法) def __add__(self, other): return int.__add__(other) # 函數(shù)參數(shù) def connect(self, user=None): self._user = user """ ★類名稱命名: 類總是使用駝峰格式命名,即所有單詞首字母大寫其余字母小寫。 類名應(yīng)該簡(jiǎn)明,精確,并足以從中理解類所完成的工作。 常見的一個(gè)方法是使用表示其類型或者特性的后綴,例如:SQLEngine ,MimeTypes 對(duì)于基類而言,可以使用一個(gè) Base 或者 Abstract 前綴 不要濫用 *args 和 **kwargs,可能會(huì)破壞函數(shù)的健壯性 """ ———————————————— 版權(quán)聲明:本文為CSDN博主「Master_Chelif」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/feikon2/article/details/79126774 |
|