使用for循环在python中创建嵌套列表

使用for循环在python中创建嵌套列表,python,for-loop,nested-loops,nested-lists,Python,For Loop,Nested Loops,Nested Lists,我的要求:[[R,88],[A,85],[S,78]] 我的代码: n =int(input()) lst = [] for i in range(n): print("Enter Name " + str(i+1)) lst.append([input()]) for j in range(i,i+1): print("Enter Score " + str(j+1)) lst.append([fl

我的要求:
[[R,88],[A,85],[S,78]]

我的代码:

n =int(input())
lst = []
for i in range(n):
    print("Enter Name " + str(i+1))
    lst.append([input()])
    for j in range(i,i+1):
        print("Enter Score " + str(j+1))
        lst.append([float(input())])
    
print(lst)
我的结果:
[[R]、[88]、[A]、[85]、[S]、[78]

我想最好使用for循环,我知道可能有更简单的方法使用列表理解和其他东西来实现,但事实是我对编码还不熟悉,我还没有涉及到这些主题。如果有人能告诉我如何使用for循环,我将不胜感激


我是新来的,所以如果我没有遵循标准实践或规则,请提前道歉:p

您需要在循环中创建一个列表,并将两个值附加到该列表中,最后将它们附加到更大的列表中。此外,如果要将每个元素作为列表值追加,则在进行输入时也应删除方括号,同样:

n =int(input())
lst = []
for i in range(n):
    sub_lst = []
    print("Enter Name " + str(i+1))
    sub_lst.append(input())
    for j in range(i,i+1):
        print("Enter Score " + str(j+1))
        sub_lst.append(float(input()))
    lst.append(sub_lst)

print(lst)
输出:

[[R,88.0],[A,85.0],[S,78.0]]
[['R', 88], ['A', 85], ['S', 78]]

您需要在循环中创建一个列表,并将两个值附加到该列表中,最后将它们附加到更大的列表中。此外,如果要将每个元素作为列表值追加,则在进行输入时也应删除方括号,同样:

n =int(input())
lst = []
for i in range(n):
    sub_lst = []
    print("Enter Name " + str(i+1))
    sub_lst.append(input())
    for j in range(i,i+1):
        print("Enter Score " + str(j+1))
        sub_lst.append(float(input()))
    lst.append(sub_lst)

print(lst)
输出:

[[R,88.0],[A,85.0],[S,78.0]]
[['R', 88], ['A', 85], ['S', 78]]

您所问的案例可以简单地使用单循环实现,无需嵌套循环,请查找下面的代码

注意:如果在内部列表中需要多个(>2)列表元素,则需要嵌套代码。如果您需要多个元素,请在注释中告诉我,以便我可以帮助解决嵌套循环的情况

输出:

[[R,88.0],[A,85.0],[S,78.0]]
[['R', 88], ['A', 85], ['S', 78]]

您所问的案例可以简单地使用单循环实现,无需嵌套循环,请查找下面的代码

注意:如果在内部列表中需要多个(>2)列表元素,则需要嵌套代码。如果您需要多个元素,请在注释中告诉我,以便我可以帮助解决嵌套循环的情况

输出:

[[R,88.0],[A,85.0],[S,78.0]]
[['R', 88], ['A', 85], ['S', 78]]

lst.append([float(input())])
更改为
lst[i]。append(float(input())
?是的,它可以工作!![r',[98.0],[s',[82.0]]。我如何摆脱分数周围的额外括号??它应该像[[r',98.0],[s'.82.0]]。谢谢!!请注意,在我的第二个示例中,我没有任何方括号
[]
。哦,对不起,这是一个愚蠢的问题,谢谢你的帮助!!你真是个了不起的人!!将
lst.append([float(input())])
更改为
lst[i]。append(float(input())
?是的,它可以工作!![r',[98.0],[s',[82.0]]。我如何摆脱分数周围的额外括号??它应该像[[r',98.0],[s'.82.0]]。谢谢!!请注意,在我的第二个示例中,我没有任何方括号
[]
。哦,对不起,这是一个愚蠢的问题,谢谢你的帮助!!你真是个了不起的人!!是的,它很管用!!评论中有人建议添加lst[i].append(float(input())),这就完成了。。令人惊叹的!是的,它很管用!!评论中有人建议添加lst[i].append(float(input())),这就完成了。。令人惊叹的!