Python:从列表中获取前10个结果

Amy*_*yth 122 python

有没有办法可以从列表中获取前10个结果.这样的事情可能是:

list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

list.fetch(10)
Run Code Online (Sandbox Code Playgroud)

Lev*_*von 256

list[:10]
Run Code Online (Sandbox Code Playgroud)

将使用切片为您提供此列表的前10个元素.

但是,请注意,最好不要使用listPython已经使用的变量标识符:list()

要了解有关这些类型操作的更多信息,您可能会发现列表中的教程很有用,链接@DarenThomas提供了解释Python的切片表示法 - 感谢Daren)

  • 这个肯定是第一个答案的快速竞赛:)该死的CAPTCHA! (5认同)
  • 九个赞成票?:-) (3认同)
  • @thg435——这不会创建列表中元素的副本,只是创建对它们的新引用。但是,它确实创建了一个新列表...... (2认同)
  • @ thg435 - python没有指针.(如果你想要指针,你使用C;)python有引用.这里的要点是你不创造新的对象,只是对它们的新引用......我们说同样的事情,但是你的原始陈述的写法是误导性的(至少对我而言)所以我想我会澄清. (2认同)
  • @mgilson:同意,我应该更好地写“创建列表中该部分的副本”。 (2认同)

use*_*289 14

检查一下

 list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

 list[0:10]
Run Code Online (Sandbox Code Playgroud)

输出:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Run Code Online (Sandbox Code Playgroud)


Spe*_*bun 13

itertools模块有很多在这伟大的东西.因此,如果标准切片(由Levon使用)不能达到您想要的效果,那么请尝试以下islice功能:

from itertools import islice
l = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
iterator = islice(l, 10)
for item in iterator:
    print item
Run Code Online (Sandbox Code Playgroud)


ddk*_*ddk 8

使用切片运算符:

list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
list[:10]
Run Code Online (Sandbox Code Playgroud)