Nếu bạn chỉ muốn số nguyên dương, bạn có thể tách và tìm kiếm số như sau:
>>> str = "h3110 23 cat 444.4 rabbit 11 2 dog" >>> [int(s) for s in str.split() if s.isdigit()] [23, 11, 2]
Đối với tất cả các trường hợp khác, sử dụng biểu thức chính quy sẽ là lựa chọn tốt nhất. Khi trích xuất giá trị, tốt nhất là chuyển chúng thành int từ chuỗi. Ví dụ:
>>> import re >>> [float(s) for s in re.findall(r'-?\d+\.?\d*', 'he33.45llo -42 I\'m a 32 string 30')] [33.45, -42.0, 32.0, 30.0]