擅长:python、mysql、java
<p>您有错误的代码格式,应该是:</p>
<pre><code>def hasPassed(device_name, data):
if isinstance(data, dict):
if 'mName' in data and data['mName'] == device_name :
return data['mTestStatus']
else :
for k in data :
if hasPassed(device_name, data[k]) : return True
if isinstance(data, list):
for element in data:
if hasPassed(device_name, element) : return True
return False
</code></pre>
<p>最后三行向左移动。你知道吗</p>
<p>函数的末尾应该有一个return,当数据不是<code>list</code>和<code>dict</code>时返回,否则sunction将返回<code>None</code>,并可能导致崩溃。你知道吗</p>
<pre><code>>>> hasPassed( 'barometerEntity', a)
False
>>> hasPassed( 'acceleratorEntity', a)
True
>>>
</code></pre>