我試圖使用生成器進行類型轉換,但是我想在成功生成值時移動到迭代器中的下一個元素。我目前的嘗試會在表達成功的情況下產生多個值:每次迭代產出一次
def type_convert(data):
for item in data:
try:
yield int(item)
except (ValueError, TypeError) as WrongTypeError:
pass
try:
yield float(item)
except (ValueError, TypeError) as WrongTypeError:
pass
yield item
這是如何實現的?
我我很確定我只是缺少了一些東西,但是你的選擇是什麼情況'int'會失敗,但你的轉換成'float'會成功嗎? – 2012-07-19 18:43:35
@NolenRoyalty - 考慮字符串:''1.0'' – mgilson 2012-07-19 18:43:55
@mgilson非常有意義,謝謝:D – 2012-07-19 18:44:30