gpt4 book ai didi

python - 不那么丑陋但可靠的方法来找到嵌入在字符串中的浮点值而不需要填充?

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

以下 python 返回运行 Raspian 8.0 jessie 的 Raspberry Pi 的 CPU 温度:

import commands
err, msg = commands.getstatusoutput('vcgencmd measure_temp')
if not err:
print msg

返回带有标准单引号而不是度数符号的"temp=47.2'C"

这给了我 float 的温度,所以我有一些有用的东西。

print float(msg.split('=')[1].split("'")[0])

返回 float 47.2

问题:但我想知道是否有更好的、或更Pythonic的、或者至少看起来不那么hackish的方法来做到这一点?

注意:我不知道操作系统如何构建字符串,但数字的长度可能是可变的,> 100C 甚至有一个减号,甚至可能有尾随零压制。请参阅https://raspberrypi.stackexchange.com/search?q=+liquid+nitrogen

听说过正则表达式,但我通常不会对字符串做太多处理,也从未尝试过使用它。

最佳答案

如果您有兴趣,这里是正则表达式的解决方案:

import re

msg = "temp=47.2'C"
m = re.search(r'-?\d+\.?\d*', msg)
print(float(m.group())) # 47.2

关于python - 不那么丑陋但可靠的方法来找到嵌入在字符串中的浮点值而不需要填充?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49562967/

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