2013-11-22 68 views
2

嗨,這是更多的風格問題。我有一個小腳本,用套筒的作品,我有常數(我知道他們是不是真正的常數,而是heyy,至少他們是在首都),其申報的一些屬性,蟒蛇'常量',並改變他們

 
# Port address for the serial port to read the weight from 
PADDR = '/dev/ttyUSB0' 
# socket address uri, backlog, and buffer 
SADDR = 'localhost:28000' 
BACKLG = 0 
BUFF = 1024 
# for cross platform compatibility use epoch in unix time 
EPOCH_START = datetime(1970, 1, 1) 

然而,我想補充功能通過解析參數來改變它們。所以問題是,我應該在解析參數時直接更改它們嗎?

,或者我應該是好的,並使用上述參數的默認值,並變更爲我,然後繞過誰需要這些功能的選項?這似乎有點過分,但話又說回來,我也不想寫將在:)

+3

爲什麼不使用支持默認值的實際參數解析器? –

+0

我剛開始這樣做。但是也想保持常數在頂部,以使事情變得簡單。 – xcorat

回答

3

DEFAULT_PADDR作爲常數皺起了眉頭代碼;但paddr作爲其默認值爲DEFAULT_PADDR的變量。不要改變「常量」,即使它只是一種風格問題 - 你的代碼變得模糊不清。

即現在,這樣做:

DEFAULT_PADDR = '/dev/ttyUSB0' 
# ... 
paddr = DEFAULT_PADDR 

則可以更改paddr當你添加參數解析。

+0

kool。我現在也在想同樣的事情,但是沒有發生過,我可以把'DEFAULT'放在前面。我不想擁有'PADDR'和'paddr' :) – xcorat