天天看點

python的命名規則

python命名規則

命名風格

python幾種不同命名風格

  1. 駝峰式命名法(WjW)
  2. 混合式命名法(wjWj)
  3. 大寫(WJWJWJ)或大寫加下劃線(WJWJWJ)
  4. 字首(wjing)或字尾(ingwj)下劃線,有時雙下劃線

變量

python變量分為:

  1. 常量
  2. 公有和私有變量
1.常量

常量全局變量,使用大寫加下劃線。指定的變量表示一個常數值

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(file)))
           
2.命名和使用

常量定義的是一組值,程式需要依賴的一組不變值,大多數就是配置檔案名,最好的做法是将所有常量放到一個檔案中,例如django的settings檔案

'''
遇到問題沒人解答?小編建立了一個Python學習交流QQ群:857662006 
尋找有志同道合的小夥伴,互幫互助,群裡還有不錯的視訊學習教程和PDF電子書!
'''
SECRET_KEY = '(5hjjo=-=r1s43d+=yu([email protected]#qf_x'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []

# Application definition

INSTALLED_APPS = [

    'django.contrib.admin',

    'django.contrib.auth',

    'django.contrib.contenttypes',

    'django.contrib.sessions',

    'django.contrib.messages',

    'django.contrib.staticfiles',

    'helloapp',

]  
           

也可以使用Configparser子產品建立配置檔案。這種沒有上一種好。

一段很好的像标記的代碼,可以給定一些是無标記屬性等

OPTIONS={}

def register_option(name):

    return OPTIONS.setdefault(name,1<<len(OPTIONS))#bin(len(OPTIONS))檢視二進制資料  

def has_option(options,name):

    return bool(options&name)

#定義标簽  

BLUE=register_option('BLUE')

RED=register_option('RED')

YELLOW=register_option('YELLOW')

#設定标簽  

SET=BLUE|RED

#判斷标簽是否存在設定中 

has_option(SET,BLUE)

has_option(SET,YELLOW)  
           
3.公有和私有變量

對于可變的且可以通過導入自由通路的全局變量,如果它們需要被保護,那麼應該使用下劃線加小寫字母變成私有變量。

4.函數和方法

函數和方法盡量使用小寫加下劃線,有些情況也使用混合大小寫

5.私有元素的正義

對于私有方法和函數,通常是字首兩個下劃線,這樣在運作時會被解釋器重命名,這樣可以避免與任何子類沖突。舉例說明

'''
遇到問題沒人解答?小編建立了一個Python學習交流QQ群:857662006 
尋找有志同道合的小夥伴,互幫互助,群裡還有不錯的視訊學習教程和PDF電子書!
'''
class Base(object):

    def __secret(self):

        print("don't tell")

    def public(self):

        self.__secret()

class Top(Base):

    def __secret(self):

        print("never say never")


print(dir(Base))

b=Base()

b._Base__secret()

print(dir(Top))

Top().public()

#輸出  

['_Base__secret',..., 'public']

don't tell

['_Base__secret', '_Top__secret', ..., 'public']

don't tell  
           

這樣就會重命名帶有雙下劃線的函數和方法

6.特殊方法

特殊方法就是使用雙下劃線開始和結尾,正常的方法不應該使用這樣的寫法。

def __init__(self):
    pass  
def __add__(self):
    pass  
           
7.參數

參數都是用小寫,有時可以加下劃線

8.property

屬性都是用小寫或小寫加下劃線

9.類

類名使用駝峰法WjWj

10.子產品和包

子產品通常都是小寫,不帶下劃線,出了特殊的如init子產品,如果子產品是包的私有子產品會使用字首加一個下劃線。包也是一樣

命名

用’has’或’is’字首命名布爾元素

is_life=True#是否活着

is_connected=True#是否連接配接  

has_cache=True#是否有記憶體  
           

複數命名集合

users=['zhangsan','lisi']
           

顯示命名字典

個人位址用全稱

persons_addresses={'zhangsan':'beijing','lisi':'shanghai'}  
           

類的名稱

類的名稱簡明扼要

SQLEngine

BaseCookie

子產品和包名稱

子產品和包要小寫,簡短sqlite,sha1,如果是協定加lib字尾,urllib

繼續閱讀