如何对 python 字符串中的数字执行数学运算
How to perform math operation on numbers in string of python
我们如何对 python 中的字符串执行数学运算。
考虑下面的例子
with open('/home/akashk/projects/math.txt') as f:
content = f.readlines()
content = [x.strip() for x in content]
for x in content:
print(x)
print(type(x))
输出类似于
1abc0+5*1hv0
我想使用操作数和运算符进行运算
以上应该算作10+5*10 = 60
简而言之,删除字符并对操作数进行数学运算。
eval('10+5*10') 给出 60 但它不会处理字符。
简单:
eval('10/2%2-1')
结果为0。
这可能会有所帮助。使用 isalpha 方法删除所有字母字符并使用 eval
例如:
s = "1abc0+5*1hv0"
s = "".join([i for i in s if not i.isalpha()])
print eval(s)
输出:
60
我们如何对 python 中的字符串执行数学运算。
考虑下面的例子
with open('/home/akashk/projects/math.txt') as f:
content = f.readlines()
content = [x.strip() for x in content]
for x in content:
print(x)
print(type(x))
输出类似于
1abc0+5*1hv0
我想使用操作数和运算符进行运算
以上应该算作10+5*10 = 60 简而言之,删除字符并对操作数进行数学运算。
eval('10+5*10') 给出 60 但它不会处理字符。
简单:
eval('10/2%2-1')
结果为0。
这可能会有所帮助。使用 isalpha 方法删除所有字母字符并使用 eval
例如:
s = "1abc0+5*1hv0"
s = "".join([i for i in s if not i.isalpha()])
print eval(s)
输出:
60