擅长:python、mysql、java
<p>好的,多亏@KittoMi的回复,我才能够完成我的功能:</p>
<pre><code>def search_function(input_node, search_variable = "hello_world"):
global x
global searched_elem
#
elements = input_node.get_children()
#
if isinstance(elements, list):
for elem in elements:
#
print(elem)
if elem.get_display_name().to_string() == search_variable:
x = 1
print("Found it!")
print(elem)
searched_elem = str(elem)
return searched_elem
#
else:
search_function(elem, search_variable=search_variable)
if x:
break
else:
pass
#
</code></pre>
<p>但是我必须承认,我仍然不能完全理解为什么没有<em>全局搜索元素</em>它就不能工作</p>
<p>函数正在查找搜索变量,它打印了“Find it”消息,但随后它自己进行了2-3次计算,显示的结果是另一个预期结果。
下面是返回打印(elem)的一个小示例:</p>
<pre><code>hello_world
Found!
hello_world
other_elem
yet_another_elem
</code></pre>
<p>这就是为什么我不得不求助于<em>全球搜索元素</em>。也许有人能澄清这一点</p>