2014-03-13 25 views
0

應該怎樣一個名字的列表變量結尾s如何命名變量列表中結尾的「s」

fpss,frame_rates, audios, 

fps_records = [] 
frame_rate_records = [] 
audio_records = [] 
+2

你爲什麼要在名字中加上'record'?它似乎沒有提供額外的清晰度,尤其是因爲它沒有告訴你有關元素類型的任何信息。 – user2357112

+1

@ user2357112我會想象一個「記錄」不僅僅是一個標量值,儘管我同意它不應該一般地進行批發,像'audioTracks'或'fpsStats'這樣的東西可以提供更多的信息。 – user2864740

回答

2

我不認爲加入_records到底增加了有價值的東西。避免爲名稱添加長度,這些名稱不會爲將來的評論者增加清晰度或洞察力,這些肯定會包含您自己。添加無意義的措詞只會使你的代碼難以閱讀,因此難以維護。

如果您認爲以後要看fps並忘記它是一個列表,請使用fps_list,它可以直接告訴任何讀者它的類型。

請沒有人把我解釋爲暗示匈牙利符號。但是當我開始列表時,我確實這樣做了,意識到順序並不重要,我需要類似於集合的行爲,然後意識到我實際上首先需要映射。使用這種約定可以讓我完全實現新的結構而不會破壞舊的結構。

例如,參見本Python風格僞代碼:

迭代1

def foo(): 
    data = [] 
    get_data_from_source()... 

迭代2

def foo(): 
    data_list = [] 
    data_set = set() 
    get_data_from_source()... 

迭代3

def foo(): 
    data_set = set() 
    data_dict = {} 
    get_data_from_source()... 

迭代4

def foo(): 
    data = {} 
    get_data_from_source()... 
    return data 
+0

是的,記錄是沒有意義的,但我不知道如何命名複數fps – newBike

0

我同意@Arone,但如果需要的話我會去加入LST(如lst_records)與列表(同一我們按照傳統的郎如VB)變量所以如果你立即開始輸入lst,IDE會開始建議所有列表。