我有一段代碼(一個xls解析器),它對字段執行一些驗證,並返回一個包含xls每行的生成器。使用良率並返回錯誤列表
現在,我必須收集列表中的驗證錯誤,並在發生器耗盡時使用它們。
這是代表解析器和設計不佳的解決方案的一段代碼。
error_list = []
def gen(limit): #xls parser
for x in range(limit):
if x%2: #fake error contition
error_list.append(x)
else:
yield(x*x) #return
有沒有更pythonic的方式來做到這一點?我不是全球變數的忠實粉絲。
我很想保持代碼,因爲它是儘可能的,但如果沒有其他辦法,我要的功能轉換爲經典
def gen(limit): #xls parser
error_list = []
results = []
for x in range(limit):
if x%2: #fake error contition
error_list.append(x)
else:
results.append(x*x)
return results, error_list
@Eric:感謝更正;我們的編輯相互碰撞,我手動合併了修復。 –
有一個錯字。它應該是'XLSParser'而不是'XMLParser'。 – thefourtheye
它就像一個魅力,謝謝! –