如何输入元组列表

时间:2013-10-24 17:08:03

标签: python tuples

我正在编写一个与图形相关的python程序 我的主要是这样的

if __name__=='__main__': 
cns = [(0,1), (0,2),(1,2), (1,3),(3,1)]
G=make_graph(cns)
r=DFS(G)

我想更改程序,以便用户可以输入数据。

cns = [(0,1), (0,2),(1,2), (1,3),(3,1)]

此列表将从用户处读取。 如何输入元组列表,该怎么做?

我可以将raw_input用于此目的吗?

3 个答案:

答案 0 :(得分:5)

from ast import literal_eval

cns = literal_eval(raw_input("Please enter the data: "))

答案 1 :(得分:0)

points = map(lambda x:map(float,x.split(",")),
         iter(lambda:raw_input("Enter X,Y coordinates or Nothing to continue").strip(),""))
print points

答案 2 :(得分:0)

我想补充一下这个问题的答案。 当您运行kindall的代码时,系统会要求您输入数据。要输入元组,您可以输入(1,2,3)。现在要检查它是否真的是一个元组,你可以添加2行:cns [0] = 8                  打印cns

输出会出现一些错误:" TypeError:' tuple'对象不支持项目分配"。

然后,你知道cns是一个元组。 谢谢@kindall!