【问题标题】:Python convert a string to tuple [duplicate]Python将字符串转换为元组[重复]
【发布时间】:2022-01-06 16:09:32
【问题描述】:

如果我有这样的机器学习预测数据:

print(prediction) 是:

('blood_pressure', '0.99999046')

那么print(type(prediction))就是:

<class 'str'>

如何将其转换为元组?

如果我这样做print(tuple(prediction)),结果如下:

('(', "'", 'b', 'l', 'o', 'o', 'd', '_', 'p', 'r', 'e', 's', 's', 'u', 'r', 'e', "'", ',', ' ', "'", '0', '.', '9', '9', '9', '9', '9', '0', '4', '6', "'", ')')

【问题讨论】:

  • 通过将您的问题标题复制到谷歌中发现重复。
  • 你可以eval它。但更重要的是,为什么首先要创建这样一个字符串?

标签: python


【解决方案1】:

您可以使用内置的eval() 函数。

tuple_as_string = "('blood_pressure', '0.99999046')"
tuple_as_tuple = eval(tuple_as_string)
print(tuple_as_tuple)
print(type(tuple_as_tuple))

【讨论】:

  • 感谢这个我以前从未听说过 eval,我得研究一下...
【解决方案2】:

如果您不想使用 eval,因为它本质上是不安全的,这也是可能的,即使不是那么优雅:

s = "('blood_pressure', '0.99999046')"
s.replace("(","").replace(")","").replace("'","").split(",")
['blood_pressure', ' 0.99999046']

【讨论】:

    猜你喜欢
    • 2018-11-11
    • 2014-09-21
    • 1970-01-01
    • 2015-09-25
    • 2013-11-07
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 2015-11-05
    相关资源
    最近更新 更多