2014-07-08 416 views
1

考慮以下幾點:是否更好的方法來檢查變量是否在字典中,變量是否等於字典鍵?

variable = "TELKOM" 
registry = {, 
    "CELLC": CellCSubscriber, 
    "TELKOM": TelkomSubscriber, 
    "HELLO MOBILE": HelloMobile, 
    "VODACOM": VodacomSubscriber, 
    "MTN": MTNSubscriber, 
} 

for k, v in registry: 
    if variable == k and variable == "TELKOM": 
     #do something to variable 

有沒有更好的方式來做到這一點?

我雖然的:

if variable in registry: 
    #do something to variable 

但隨着這個問題是,我沒有比較它"TELKOM", or am I wrong?

+2

我不明白你的問題? '如果變量=='TELKOM'和變量在註冊表中:' – RedX

回答

4

的方式你可以這樣做:

if variable == "TELKOM" and variable in registry: 
    # do something to variable 
+0

謝謝..我沒有想到......答案看起來有多愚蠢。感謝您的幫助:) – Renier

+0

@Renier爲什麼要進行變量檢查?這與在註冊表中只是說'如果'TELCOM'一樣。 – Hoopdady

+0

@Hopopady - 不完全。如果'variable' *不是*'「TELKOM」'? – ford

0

我不t確切地知道你想要做什麼,但通過傳遞性財產,你可以說

for k, v in registry: 
    if 'TELKOM' == k: 
     # do something 

這就是同樣的事情。

如果我猜的話,雖然我覺得你只是想這樣做:

if 'TELKOM' in registry: 
    # do something 
相關問題