如何检查Python中是否存在特定的子级

2024-09-30 03:24:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须检查元素是否有特定的子元素。 我尝试了hasattr(),但它不起作用

例如:我有一个xml,其中frame是一个元素。我有大量的元素'框架'。signal和signalgroup是子级,都是可选的。我想检查特定帧是否有子信号组。你知道吗

请告诉我怎么检查。你知道吗

更新:

我不知道是哪个库,但我正在使用Symtavision软件解析xml并运行python脚本。你知道吗

我附上了我正在使用的代码: 帧具有chilren“Signal和Signalgroup”。一个特定的框架可能有两个孩子或其中一个。我想检查帧是否有子“Signalgroup”。你知道吗

frames = system.getElements('Frame')

Signalgroups = system.getElements('Signalgroup')

for frame in frames:

     if(hasattr (frame.Signalgroup) == True):
          #some task
     else:
          #some task

Tags: 框架元素taskframessignalsomexmlsystem
1条回答
网友
1楼 · 发布于 2024-09-30 03:24:00

试试这个:

frames = system.getElements("Frame")

for frame in frames:    
    if(len(frame.getChildren("SignalGroup")) > 0):
        print "Got some SignalGroup"
    else:
        print "No SignalGroup"

信号组是帧的子级。 顺便说一句:你可以导航到父母与元素.getParents(...). 我建议您更改问题的标题,因为它不是一个纯python问题,而是一个Symtavision(SymTA/S)API问题。干杯,克里斯

相关问题 更多 >

    热门问题