我在id1和id2有很多用户。我希望能够限制作为用户输入结果显示的用户数量。例如,如果x中有100个。我希望能够输入25,以仅显示25个用户
id1 = ([u.id for u in userlist1])
id2 = ([u.id for u in userlist2])
x = set(id1) - set(id2)
numshow = raw_input('How many do you want to show? ')
print 'Now showing ' + numshow + ' users'
usershow = (api.ShowUser(user_id=usershow) for usershow in x)
for num in usershow[:numshow]:
next(usershow)
我得到以下错误: TypeError:“generator”对象没有属性“getitem”
您可以在生成器中使用
[:numshow]
从api中只获得numshow
个用户。在编辑:因为@TigerhawkT3通知},所以你必须把}。正确的版本是
^{pr2}$x
是{x
转换成{或者你必须把生成器转换成列表
您也可以使用range-但是如果用户少于
^{4}$numshow
,那么就会出现错误StopIteration
。在编辑:使用
islice
您不必将任何内容转换为列表。在顺便说一句:如果您将
usershow
与for
一起使用,那么您就不需要next()
,我只能在一个例子中使用next()
。在相关问题 更多 >
编程相关推荐