【发布时间】:2015-12-12 23:11:47
【问题描述】:
我正在尝试使用input 来获取元组的值。但是,由于input 将值设置为字符串,我也尝试unstring 它。我发现 eval 可以用于此目的,但它应该是 distrusted. 虽然只要我私下使用代码就不会成为问题,如果我要公开发布它,我想使用最好的代码可能。
那么,在 Python 3 中是否有另一种方法可以解开 tuple 的字符串?
这是我目前正在做的事情:
>>> a = input("What is the value? ")
What is the value? (3,4)
>>> a
'(3,4)'
>>> eval(a)
(3, 4)
【问题讨论】:
-
您可以尝试获取两个值(我假设您想要一个元组,而不是 N 元组),例如
a, b = map(int, input().split()),其中a和b用空格分隔。 -
为什么不让用户输入一些更简单的东西,比如不带括号的
3, 4? -
@101 因为此代码将用于笛卡尔坐标(其中很多)。我发现将坐标组合在一起更容易。 :)
标签: python string python-3.x