for循环枚举函数返回意外结果

问题描述 投票:0回答:2

嗨,我是Python的新手,当我通过枚举函数时,我得到了意想不到的结果。以下是我的代码。

for index, course in enumerate(courses, start= 1):
    print(index, course)

我期望看到:

1 PE
2 Comsci

但我得到了回报:

(1, 'Math') 
(2, 'PE')
(3, 'Comsci')
python python-3.x enumerate
2个回答
2
投票

根据我的收集,你试图打印除courses列表的第一项以外的所有项目。

正如奥斯丁对你的问题发表评论,你需要在你的普查员中使用courses[1:]而不是courses

这个

courses=["MATH", "PE", "COMSCI"]
for index, course in enumerate(courses[1:], start=1):
    print(index, course)

回报

(1, 'PE')
(2, 'COMSCI')

-2
投票

你可以使用itertools来做到这一点:

import itertools
courses = ['a', 'b', 'c']
for index, course in itertools.islice(enumerate(courses), 1, None)):
    print((index, course))

将打印

(1, 'b')
(2, 'c')
© www.soinside.com 2019 - 2024. All rights reserved.