1. 程式人生 > 程式設計 >python的命名規則知識點總結

python的命名規則知識點總結

python命名規則

命名風格

python幾種不同命名風格

駝峰式命名法(WjW)

混合式命名法(wjWj)

大寫(WJWJWJ)或大寫加下劃線(WJWJWJ)

字首(wjing)或字尾(ingwj)下劃線,有時雙下劃線

變數

python變數分為:

(1)常量

(2)公有和私有變數

1.常量

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

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(file)))

2.命名和使用

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

SECRET_KEY = '(5hjjo=-=r1s43d+=yu(ay2vy_pe53ut0kzd5skzxa9@5#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.私有元素的正義

對於私有方法和函式,通常是字首兩個下劃線,這樣在執行時會被直譯器重新命名,這樣可以避免與任何子類衝突。舉例說明:

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。

以上就是詳解python的命名規則的詳細內容,更多請關注我們其它相關文章