gpt4 book ai didi

python - 如何提取字符串的一部分

转载 作者:太空宇宙 更新时间:2023-11-03 13:33:01 24 4
gpt4 key购买 nike

我有这个字符串:

-1007.88670550662*p**(-1.0) + 67293.8347365694*p**(-0.416543501823503)

但实际上我有很多这样的字符串:

a*p**(-1.0) + b*p**(c)

其中 a、b 和 c 是 double 的。我想提取这个字符串的 a、b 和 c。我如何使用 Python 执行此操作?

最佳答案

import re
s = '-1007.88670550662*p**(-1.0) + 67293.8347365694*p**(-0.416543501823503)'
pattern = r'-?\d+\.\d*'

a,_,b,c = re.findall(pattern,s)
print(a, b, c)

输出

('-1007.88670550662', '67293.8347365694', '-0.416543501823503')

s 是您的测试字符串,pattern 是正则表达式模式,我们正在寻找 float ,一旦我们使用 findall() 找到它们我们将它们分配回 a,b,c

请注意,只有当您的字符串采用您提供的格式时,此方法才有效。否则你可以玩这个模式来匹配你想要的。

如果您需要在正数前包含 +,请像评论中的大多数人一样进行编辑,您可以使用此模式 r'[-+]?\d+\。\d*'

关于python - 如何提取字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43546963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com