Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để nhận các giá trị số nguyên từ một chuỗi trong Python?

Bạn có thể sử dụng biểu thức chính quy để nhận tất cả các giá trị nguyên theo thứ tự xuất hiện của chúng trong một mảng. Bạn có thể sử dụng mã sau để nhận các giá trị đó -

Ví dụ

import re
s = "12 hello 52 19 some random 15 number"
# Extract numbers and cast them to int
list_of_nums = map(int, re.findall('\d+', s))
print list_of_nums

Đầu ra

[12, 52, 19, 15]

Nếu bạn muốn nối tất cả các số thành một số và xuất ra số đó, thì bạn có thể sử dụng phương thức str.isdigit để lọc chúng. Ví dụ,

>>> s = "12 hello 52 19 some random 15 number"
>>> print int(filter(str.isdigit, s))
12521915