Python 3 输入到二维列表
Python 3 Input to 2D List
我正在尝试输入 3 个数字,然后将它们保存到二维列表中。
例如。
Input: 1 2 3
Input: 4 5 6
Input: 7 8 9
= [[1,2,3], [4,5,6], [7,8,9]]
当我尝试将输入添加到列表时,我得到了这个:
['1 2 3', '4 5 6', '7 8 9']
myList=[]
in=input("3 numbers:")
myList.append(in)
while in!= "":
in=input("Enter 3 numbers: ")
in.split()
myList.append(in)
我也需要它们是整数,这样我以后可以用它们做数学运算,但我不知道如何做到这一点并将输入同时保存到二维列表中。
拆分不修改原件
in = in.split()
Eric 的回答稍微扩展一下,因为您还要求 int
s。
nos = list(int(x) for x in nos.split())
请注意,我将输入重命名为 nos
,因为 in
是保留的 Python 关键字 - 我什至只是在这里使用它。将变量命名为与关键字相同绝不是一个好主意。替代版本:
nos = nos.split()
for x in nos:
x = int(x)
第一行与 Eric 的相同,但我遍历列表并将每个值转换为整数。
好吧,出于某种原因,这两个家伙都给了你一些奇怪的方式来做这件事,不太确定为什么不直接实例化一个二维数组,然后从那里开始。即
imp = [[] for x in range(3)] #Instantiate it
for i in range(3):
for k in range(3):
imp[i].extend([int(input("Value at["+str(i)+"]["+str(k)+"]:"))]) #Input your own values
print(imp)#Display the array.
这是最好的直接方式。可以通过列表理解来完成整个事情,但不太确定这是否会让你比我想要的更困惑。
编辑:
前进的要点是为您提供您输入给定列表的索引。
我正在尝试输入 3 个数字,然后将它们保存到二维列表中。
例如。
Input: 1 2 3
Input: 4 5 6
Input: 7 8 9
= [[1,2,3], [4,5,6], [7,8,9]]
当我尝试将输入添加到列表时,我得到了这个:
['1 2 3', '4 5 6', '7 8 9']
myList=[]
in=input("3 numbers:")
myList.append(in)
while in!= "":
in=input("Enter 3 numbers: ")
in.split()
myList.append(in)
我也需要它们是整数,这样我以后可以用它们做数学运算,但我不知道如何做到这一点并将输入同时保存到二维列表中。
拆分不修改原件
in = in.split()
Eric 的回答稍微扩展一下,因为您还要求 int
s。
nos = list(int(x) for x in nos.split())
请注意,我将输入重命名为 nos
,因为 in
是保留的 Python 关键字 - 我什至只是在这里使用它。将变量命名为与关键字相同绝不是一个好主意。替代版本:
nos = nos.split()
for x in nos:
x = int(x)
第一行与 Eric 的相同,但我遍历列表并将每个值转换为整数。
好吧,出于某种原因,这两个家伙都给了你一些奇怪的方式来做这件事,不太确定为什么不直接实例化一个二维数组,然后从那里开始。即
imp = [[] for x in range(3)] #Instantiate it
for i in range(3):
for k in range(3):
imp[i].extend([int(input("Value at["+str(i)+"]["+str(k)+"]:"))]) #Input your own values
print(imp)#Display the array.
这是最好的直接方式。可以通过列表理解来完成整个事情,但不太确定这是否会让你比我想要的更困惑。
编辑: 前进的要点是为您提供您输入给定列表的索引。