溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中命名規(guī)則的示例分析

發(fā)布時(shí)間:2021-08-25 11:11:40 來源:億速云 閱讀:112 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹python中命名規(guī)則的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

python命名規(guī)則

命名風(fēng)格

python幾種不同命名風(fēng)格

駝峰式命名法(WjW)

混合式命名法(wjWj)

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

前綴(wjing)或后綴(ingwj)下劃線,有時(shí)雙下劃線

變量

python變量分為:

(1)常量

(2)公有和私有變量

1.常量

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

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

2.命名和使用

常量定義的是一組值,程序需要依賴的一組不變值,大多數(shù)就是配置文件名,最好的做法是將所有常量放到一個(gè)文件中,例如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模塊創(chuàng)建配置文件。這種沒有上一種好。

一段很好的像標(biāo)記的代碼,可以給定一些是無標(biāo)記屬性等。

OPTIONS={}

def register_option(name):

  return OPTIONS.setdefault(name,1<<len(OPTIONS))#bin(len(OPTIONS))查看二進(jìn)制數(shù)據(jù) 

def has_option(options,name):

  return bool(options&name)

#定義標(biāo)簽 

BLUE=register_option('BLUE')

RED=register_option('RED')

YELLOW=register_option('YELLOW')

#設(shè)置標(biāo)簽 

SET=BLUE|RED

#判斷標(biāo)簽是否存在設(shè)置中 

has_option(SET,BLUE)

has_option(SET,YELLOW)

3.公有和私有變量

對于可變的且可以通過導(dǎo)入自由訪問的全局變量,如果它們需要被保護(hù),那么應(yīng)該使用下劃線加小寫字母變成私有變量。

4.函數(shù)和方法

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

5.私有元素的正義

對于私有方法和函數(shù),通常是前綴兩個(gè)下劃線,這樣在運(yùn)行時(shí)會被解釋器重命名,這樣可以避免與任何子類沖突。舉例說明:

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

這樣就會重命名帶有雙下劃線的函數(shù)和方法。

6.特殊方法

特殊方法就是使用雙下劃線開始和結(jié)尾,常規(guī)的方法不應(yīng)該使用這樣的寫法。

def __init__(self):

  pass 

def __add__(self):

  pass

7.參數(shù)

參數(shù)都是用小寫,有時(shí)可以加下劃線。

8.property

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

9.類

類名使用駝峰法WjWj。

10.模塊和包

模塊通常都是小寫,不帶下劃線,出了特殊的如init模塊,如果模塊是包的私有模塊會使用前綴加一個(gè)下劃線。包也是一樣。

命名

用'has'或'is'前綴命名布爾元素

is_life=True#是否活著

is_connected=True#是否連接 

has_cache=True#是否有內(nèi)存

復(fù)數(shù)命名集合

users=['zhangsan','lisi']

顯示命名字典

個(gè)人地址用全稱

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

類的名稱

類的名稱簡明扼要

SQLEngine

BaseCookie

模塊和包名稱

模塊和包要小寫,簡短sqlite,sha1,如果是協(xié)議加lib后綴,urllib。

以上是“python中命名規(guī)則的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI