美化组中的属性访问问题

2024-09-27 07:33:56 发布

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

我在使用Python(2.7)时遇到了问题。代码基本上包括:

str = '<el at="some">ABC</el><el>DEF</el>'
z = BeautifulStoneSoup(str)

for x in z.findAll('el'):
    # if 'at' in x:
    # if hasattr(x, 'at'):
        print x['at']   
    else:
        print 'nothing'

我希望第一个if语句正常工作(即:如果at不存在,则打印"nothing"),但它始终不打印任何内容(即:总是False)。另一方面,第二个if总是True,这将导致代码在试图从第二个<el>元素访问at时引发一个KeyError,当然这是不存在的。


Tags: 代码inforifdefsomeelat

热门问题