Tôi đang cố gắng thực hiện chuyển đổi kiểu bằng cách sử dụng trình tạo, nhưng tôi muốn chuyển sang phần tử tiếp theo trong trình vòng lặp khi tôi tạo thành công một giá trị. Nỗ lực hiện tại của tôi sẽ mang lại nhiều giá trị trong trường hợp biểu thức thành công:Chỉ sản lượng một lần cho mỗi lần lặp
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
Điều này được thực hiện như thế nào?
tôi m khá chắc chắn tôi chỉ thiếu một cái gì đó, nhưng những gì là một trường hợp diễn viên của bạn để 'int' sẽ thất bại nhưng dàn diễn viên của bạn thành' float' sẽ thành công? –
@NolenRoyalty - xem xét chuỗi: ''1.0'' – mgilson
@mgilson có ý nghĩa hoàn hảo, nhờ: D –