Skip to main content
 首页 » 编程设计

python之加入生成的数字转换为 int

2025年05月04日11hnrainll

例子:

import re 
rx = re.compile("{0-9}") 
Var1 =bla bla bla 54467 
Var2= rx.findall(Var1) 
number = ''.join(Var2) 

我的问题是如何将数字变量转换为 int,我尝试使用 int() 这样做,但出现错误。 或者有没有办法用另一种方法创建像 int 这样的变量?

请您参考如下方法:

不要为此使用正则表达式。 filter() 更简单快捷:

>>> s = "bla bla bla 54467 bla" 
>>> int(filter(str.isdigit, s)) 
54467 

以上代码会将字符串中的所有数字合并为一个字符串。如果你不想要这个,使用

>>> s = "bla 1223 bla 54467 bla" 
>>> map(int, filter(str.isdigit, s.split())) 
[1223, 54467] 

适用于 Python 3.x 的相同方法是:

>>> s = "bla bla bla 54467 bla" 
>>> int("".join(filter(str.isdigit, s))) 
54467 
>>> s = "bla 1223 bla 54467 bla" 
>>> list(map(int, filter(str.isdigit, s.split()))) 
[1223, 54467]