2012-01-19 45 views
-1

我是新來的Python ..查找邏輯在Python

在我的測試功能我傳遞其認爲"invalid password"一些文本數據。 在這種情況下,我將Data_Check作爲"invalid password"返回,但現在客戶端詢問"invalid password"是否在data變量中多次出現,然後僅返回"INVALID PASSWORD",否則它應該返回"VALID"本身。

請告訴我,以下功能的變化可以做什麼。

def test(data): 
    Data_Check = 'VALID' 
    if (data.lower()).find('invalid password') >= 1: 
     Data_Check = 'INVALID PASSWORD' 
    return Data_Check 
+3

它幫助,如果你可以用的應該發生的事情爲例更新你的問題。它看起來像這將起作用。但是你的解釋並不十分清楚。一個例子會更清楚。 –

回答

1

改進您的解決方案:

if data.lower().count('invalid password') > 1: 
    return 'INVALID PASSWORD' 
return 'VALID' 

一行代碼的解決方案:

return 'VALID' if data.lower().count('invalid password') <= 1 else 'INVALID PASSWORD' 

而且在一個側面說明,你應該分開你的if「 s「做某事」阻止一條新線。

+0

哎呀,我的錯。我現在要修復它。 – Edwin