python re.search() 匹配 int() 的无效文字
python re.search() match invalid literal for int()
我正在尝试将例如 173.4k(在字符串中)转换为 173.400。这是我的代码:
h = "173.4k net worth blabla "
match = re.search('([-+]?\d*\.\d+|\d+)k net worth', h)
if match:
f = int(match.group(1))*1000
print(f)
我预期的结果是 173.400 但我得到的是:
ValueError: invalid literal for int() with base 10: '173.4'
有人可以解释一下为什么我会收到这个 ValueError 吗?
import re
h = "173.4k net worth blabla "
match = re.search('([-+]?\d*\.\d+|\d+)k net worth', h)
if match:
f = float(match.group(1))*1000
print(f)
我正在尝试将例如 173.4k(在字符串中)转换为 173.400。这是我的代码:
h = "173.4k net worth blabla "
match = re.search('([-+]?\d*\.\d+|\d+)k net worth', h)
if match:
f = int(match.group(1))*1000
print(f)
我预期的结果是 173.400 但我得到的是:
ValueError: invalid literal for int() with base 10: '173.4'
有人可以解释一下为什么我会收到这个 ValueError 吗?
import re
h = "173.4k net worth blabla "
match = re.search('([-+]?\d*\.\d+|\d+)k net worth', h)
if match:
f = float(match.group(1))*1000
print(f)