如何从用户输入中获取两个列表的元组?

How to take a tuple of two lists from user input?

如何从 python 脚本中的 bash 终端上的 用户输入 获取两个等长列表的元组? 假设我们希望程序注册以下元组

([0.001, 0.01, 0.1, 1], [1000, 100, 10, 1])

抓住它们的唯一条件是两个一组:0.001、1000,然后是 0.01、100 等等。


说明

代码先取0.001和1000

然后需要 0.01 和 100 秒

然后需要 0.1 和 10 第三

最后需要 1 和 1。

一旦它获取了所有这些,它将把它们排列在所述元组中。

N = 4
# user input in this way:
# 1 2
x =  [tuple(map(lambda x: int(x), input().split())) for _ in range(N)]

# user input in this way:
# 1 
# 2
# x = [(int(input()), int(input())) for _ in range(N)]

如果您只想提取输入:

x, y = ([0.001, 0.01, 0.1, 1], [1000, 100, 10, 1])
print(tuple(zip(x,y)))
# ((0.001, 1000), (0.01, 100), (0.1, 10), (1, 1))

您可以使用循环获取输入。

lst1 = list()
lst2 = list()
for i in range(4):
    lst1.append(input("input 1 :"))
    lst2.append(input("input 2 :"))

tup = (lst1, lst2)