如何在 python 中从字符串打印浮点数?



下面是一个例子:

x = ["changes": {"Average Response Time": ["22.93705940246582", "21.93705940246582"]}},]

如何仅提取我将收到的浮点数:

22.93705940246582
21.93705940246582

这在某种程度上是"可能的",但我建议您先开始学习字典和Python数据结构。

一旦你修复了你的SyntaxError,假设你有:

x = [{"changes": {"Average Response Time": ["22.93705940246582", "21.93705940246582"]}},]

您应该能够执行以下操作:

print("nn".join(x[0]["changes"]["Average Response Time"]))
<小时 />

全输出:

>>> x = [{"changes": {"Average Response Time": ["22.93705940246582", "21.93705940246582"]}},]
>>> print("nn".join(x[0]["changes"]["Average Response Time"]))
22.93705940246582
21.93705940246582
>>> 

关于n:相当于"新行"。

关于x[0]["changes"]["Average Response Time"]:您的x变量是字典的list。 为了理解,让我们一步一步地进行:

  1. 在这里,我们可以看到我们得到了列表的第一个元素,即字典。
>>> x[0]
{'changes': {'Average Response Time': ['22.93705940246582', 
'21.93705940246582']}}
>>> 
  1. 我们正在寻找"浮点数" - 顺便说一下,它们实际上是字符串。这意味着我们首先必须"选择""changes"键。这就是我们在这里所做的。
x[0]["changes"]
{'Average Response Time': ['22.93705940246582', '21.93705940246582']}
>>>
  1. 我们现在必须"选择""Average Response Time"键。和以前一样。
>>> x[0]["changes"]["Average Response Time"]
['22.93705940246582', '21.93705940246582']
>>> 

关于str.join()

返回一个字符串,它是可迭代字符串的串联。如果可迭代对象中有任何非字符串值(包括字节对象),则会引发 TypeError。元素之间的分隔符是提供此方法的字符串。


我希望这有所帮助,但请尽快了解 Python 列表、字典和数据结构......

你的代码是错误的,因为你使用了"changes":但是写成一个列表,它应该是一个外面的大字典。您的代码应如下所示:

您可以这样做:

x = {"changes": {"Average Response Time": ["22.93705940246582", "21.93705940246582"]}}

然后你可以做:

print(x['changes']['Average Response Time'])

这为您提供:

['22.93705940246582', '21.93705940246582']

如果您想要第一个浮点数:

print(x['changes']['Average Response Time'][0])

否则,如果您不想要字典但想将其作为列表。您可以使用此正则表达式,它将为您提供所需的数字:

regex_digit_match = re.compile(r"(d+(?:.d+)?)")
regex_digit_match.findall(yourlist[index])

最新更新