我正在尝试使用input
获取元组的值。然而,自从 input
将值设置为字符串,我也尝试取消字符串它。我发现eval
适用于此目的,但它应该是 distrusted.虽然只要我私下使用代码就不会成为问题,但如果我要公开发布它,我希望使用尽可能最好的代码。
那么,还有另一种方法可以解开 tuple
的字符串吗?在Python 3 中?
这是我目前正在做的事情:
>>> a = input("What is the value? ")
What is the value? (3,4)
>>> a
'(3,4)'
>>> eval(a)
(3, 4)
最佳答案
使用 eval 的安全版本,ast.literal_eval
,它是专为您想要实现的目标而设计的:
from ast import literal_eval
tup = literal_eval(a)
关于python - 如何在没有 eval 的情况下取消列表/元组的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34246101/