0
#creating a list named employees 

print(('#'*50).center(100,'~'))

employees=[['Name','Age','Department'],['John Mckee',28,'Sales'],['Lisa Crawford',29,'Marketing'],['Sujan patel',33,'HR']]

#print the top row of the matrix (the column names)

print(employees[0],'\n')

print('LISA DETAILS'.center(100,'-'))

#print only lisa details 

print('Name:',employees[2][0])
print('Age:',employees[2][1])
print('Department:',employees[2][2])



#print all employees details 

print('ALL DETAILS'.center(100,'-'))

print(employees)

#want to start for loop at Name:John,Age:28,Department:sales, instead of Name:Name,Age:Age,Department:Department 

for e in (employees):
        print('Name:',e[0])
        print('Age:',e[1])
        print('Department:',e[2])

我可以从第二行(基本上是员工)而不是第一行(姓名,年龄,部门)开始打印吗?

我知道,不知道我将如何继续在不同位置的列表中接近 for 循环。

4

2 回答 2

2

如果您需要更多 Pythonic 方法来处理 @pakpe 呈现的内容,您可以使用列表切片

for e in employees[from_index:to_index]:
  ...

wherefrom_indexto_index表示边界,如果不需要,可以省略其中之一。但是,这会创建数组的副本。如果您不想制作副本,请使用itertools.islice()

for e in islice(employees, from_index, to_index):
  ...

None在这种情况下,应将未使用的参数显式设置为。

于 2021-01-24T20:50:09.403 回答
1

不要使用 for-each 循环,而是使用常规的 for 循环,将索引从 1 提升到 len(employees):

for i in range(1, len(employees)):
    print('Name:',employees[i][0])
    print('Age:',employees[i][1])
    print('Department:',employees[i][2])
于 2021-01-24T20:27:38.047 回答