2010-11-22 5 views
0
number = droid.readPhoneState()['result']['incomingNumber'] 

この構文では、 'result'と 'incomingNumber'は何ですか?パラメータではありませんか?python関数の呼び出し構文... result = foo()['abc']

これらはどのように機能に関連していますかreadPhoneState

import android 

droid = android.Android() 
droid.startTrackingPhoneState() 

number = droid.readPhoneState()['result']['incomingNumber'] 

if number != None: 
    droid.speak('Call from '+str(number)) 
else: 
    droid.makeToast('No incoming call') 
+0

を含む辞書オブジェクトであるプロパティresultが含まれています。 4つのスペースでインデントします。 –

答えて

9

droid.readPhoneState()はdictsのdictを返します。等価コード:

outerDict = droid.readPhoneState() 
innerDict = outerDict['result'] 
number = innerDict['incomingNumber'] 
+0

+1以下の語句: – khachik

+0

ありがとう、 どこにこの文法が書かれていますか? – Tiwari

+0

OK、ありがとう MY DUMB ... – Tiwari

2

result及びincomingNumber辞書又は方法__getitem__を実装するクラスのインスタンスへのキーです。これは、readPhoneState()が、キーがresultであり、対応する値がキーがincomingNumberであると想定される辞書オブジェクトであると想定される辞書オブジェクトを返すことを意味する。

+0

+1の '__getitem__' –

0

おそらく、readPhoneState()は値が辞書である辞書を返します。

この構文では、readPhoneState()によって返された辞書をキー 'result'に関連付けて取得し、そのキーが 'incomingNumber'の値を要求します。

1

droid.readPhoneState()は、'result'に対応する値がdictであるdictを返します。

1

readPhoneState()はメソッドであり、辞書オブジェクトを返します。

辞書オブジェクトは、プロパティあなたがやったように、コードセクションをマークする必要はありませんincomingNumber

関連する問題