2013-10-15 37 views
1

我碰到很多情況,比如命名列表中的元素是一個很好的命名約定嗎?

while(len(somelists) > 0): 
    somelist = somelists.pop() # prob not the best example 
    ... 

,這往往混淆了我,而我讀的代碼,因爲我錯過了那正是結束。

由於我在很多語言中經常見到這種情況,我只是想知道這實際上是一種很好的命名約定嗎?

+0

感覺像匈牙利符號。如果將其更改爲Map或Set,該怎麼辦?你需要重命名變量嗎? – duffymo

+1

命名約定各不相同,但通常您會看到像「someList」這樣的駱駝事件。我通常會將我的名字與類型綁定,所以如果列表的類型是「Person」,那麼我會命名peopleList,並且被彈出的Person對象將被命名爲「person」。 – dckuehn

+0

可以試一下'somethingJavaLike'這就是我親自做的。只是長期的和描述性的名字,比如你的例子中的'longList'和'tempList'。 –

回答

2

s沒關係,但list不是。嘗試爲它們代表的變量命名,而不是它們的類型。所以:

while(len(cars) > 0): 
    car = cars.pop() 

當然,有些人設法完全避免s的問題。他們將相同的建議應用於汽車集裝箱,因此我們有:

while(len(dealership) > 0): 
    car = dealership.pop()