Bạn có thể áp dụng hàm isdigit () trên mỗi ký tự trong Chuỗi. Hoặc bạn có thể sử dụng các biểu thức thông thường.
Ngoài ra tôi tìm thấy Làm cách nào để tìm một số trong chuỗi trong Python? với những cách rất phù hợp để trả về số. Giải pháp dưới đây là từ câu trả lời trong câu hỏi đó.
number = re.search(r'\d+', yourString).group()
Cách khác:
number = filter(str.isdigit, yourString)
Để biết thêm thông tin, hãy xem regex docu: http://docs.python.org/2/l Library / re.html
Chỉnh sửa: Điều này Trả về số thực tế, không phải giá trị boolean, vì vậy các câu trả lời ở trên chính xác hơn cho trường hợp của bạn
Phương thức đầu tiên sẽ trả về chữ số đầu tiên và các chữ số liên tiếp tiếp theo. Do đó, 1.56 sẽ được trả về là 1. 10.000 sẽ được trả về là 10. 0207-100-1000 sẽ được trả về là 0207.
Phương pháp thứ hai không hoạt động.
Để trích xuất tất cả các chữ số, dấu chấm và dấu phẩy và không mất các chữ số không liên tiếp, hãy sử dụng:
re.sub('[^\d.,]' , '', yourString)