I가 내가 웹 페이지에서 분석 한 다음 XML :파이썬 경우 ElementTree
<!--
Parts from the iGEM Registry of Standard Biological Parts
-->
<rsbpml>
<part_list>
<part>
<part_id>151</part_id>
<part_name>BBa_B0034</part_name>
<part_short_name>B0034</part_short_name>
<part_short_desc>RBS (Elowitz 1999) -- defines RBS efficiency</part_short_desc>
<part_type>RBS</part_type>
<release_status>Released HQ 2013</release_status>
<sample_status>In stock</sample_status>
<part_results>Works</part_results>
<part_nickname>SAMT</part_nickname>
<part_rating/>
<part_url>http://parts.igem.org/Part:BBa_J45001</part_url>
<part_entered>2006-06-07</part_entered>
<part_author>Kate Broadbent</part_author>
<deep_subparts/>
<specified_subparts/>
<specified_subscars/>
<sequences>...</sequences>
<features>...</features>
<parameters>
<!--...-->
<!--...-->
<parameter>...</parameter>
<parameter>
<name>swisspro</name>
<value>Q8H6N2</value>
나는 swisspro
매개 변수 값을 반환하는 몇 가지 코드를 가지고; Q8H6N2
. 그러나 swisspro
매개 변수가없는 경우 코드가 오류를 발생 시키길 원합니다.
은 지금까지 나는 아래의 코드를 시도했지만 작동하지 않습니다 : 그 else
문 존재와
def part_attrib(self,x):
if x == 'uniprot_id':
for parameter in self.root.iter(tag='parameter'):
name = parameter.find('name')
if name is not None and name.text == 'swisspro':
return parameter.find('value').text
else:
return "No UniProt ID present."
이 코드는 항상 swisspro
매개 변수의 존재가 있는지 여부 오류 문을 출력합니다. else
인수를 생략하면 코드가 작동하지만 swisspro
매개 변수가없는 경우 오류가 발생하지 않습니다.
내가 뭘 잘못하고 있니?
이러한 <paramter>
섹션 중 일부가 XML에 강조 표시되어야합니다.
예, 작동합니다. 고마워요! – Charon