Python for 循环只获取前 x 个元素

Python for loop to fetch only the first x number of elements

我是编程新手,所以请耐心等待 :),我正在尝试创建一个 for 循环以仅显示 2d 列表的前几个元素。将有 2 个列表 1 显示第一个元素,直到隐藏密码,其中将询问用户是否希望查看带有未隐藏密码的完整行。我似乎无法让它们 for 循环只打印每行的前 0 - 5 个元素。下面链接的代码非常适合第二个循环,但我需要帮助来创建一个从 [0:5] 打印的 for 循环 例如。

allUserDetails = [["John", "Doe", "User", "Sales", "johndoe91", "Hidden", "Viewable"],
                  ["James", "Hill", "Admin", "Administrator", "hill95", "Hidden", "Viewable"]]

showRecords = 0

            for row in range(len(allUserDetails)): # loop prints the full list
                showRecords += 1
                print("-" * 25)
                print("Record: ", showRecords)
                for col in range(len(allUserDetails[row])):
                    print(allUserDetails[row][0:][col][0:])
            showRecords = 0
            print("-" * 25)
            print()

任何帮助将不胜感激:)

我建议在行循环中使用另一个 for 循环,这将有助于从行中挑选出 n 个元素

for row in allUserDetails: #Loops through all arrays in the 2D array
    for i in range(5): #Loops through the first five elements of the row
        print(row[i])

for row in allUserDetails 会将变量行设置为二维数组中定义的字符串数组。

for i in range(n) 将循环遍历该行 n 次,然后您可以使用 print(row[i])

打印出其中找到的每个字符串

据我了解,您只想打印每行的前五个元素?

在这种情况下,您可以遍历列表以获取行,然后对行进行切片。这个的实现可能看起来像这样:

for row in allUserDetails:
for element in row[0:5]: # the rows have been sliced to only show element 0 - 5
    print(element)
print("-" * 25)