我想知道,有沒有一種方法可以將開始和結束值存儲在我的主要方法中。我嘗試這樣做,但它給我的錯誤:將2個值存儲在一個變量中?
def searchM():
fileAddress = '/database/pro/data/'+ID+'.txt'
with open(fileAddress,'rb') as f:
root = etree.parse(f)
for lcn in root.xpath("/protein/match[@dbname='M']/lcn")
start = int(lcn.get("start"))#if it is PFAM then look for start value
end = int(lcn.get("end"))#if it is PFAM then also look for end value
return "%s, %s" % (start, end,)
values = searchM()
(start, end,) = values
的錯誤信息是UnboundLocalError:局部變量「開始」分配
這行代碼:'返回 「%S%S」 %(start,end,)'在沒有分配'start'的情況下執行。現在已經結束了。即使你修復它,'(start,end,)= values'也不會起作用。你不能將一個字符串解壓到兩個變量中。 – 2012-07-10 22:46:54
@DavidHeffernan我應該怎麼做才能得到這兩個值? – 2012-07-10 22:50:36
好吧,只需返回一個元組:'return(start,end)'。然後像這樣解壓縮它們:'(start,end)= searchM()'。顯然,你需要確保'start'和'end'被分配。 – 2012-07-10 22:57:36