> [n for n in range(0,10) if is_Integer(n+1)] snip
> [n for n in range(0,10) if is_Integer(n)] You are doing this from the command line, yes? The first is getting preparsed, so that 1 is not a python int, it is a sage Integer: sage: preparse('[n for n in range(0,10) if is_Integer(n+1)]') '[n for n in range(Integer(0),Integer(10)) if is_Integer(n+Integer(1))]' sage: preparse('[n for n in range(0,10) if is_Integer(n)]') '[n for n in range(Integer(0),Integer(10)) if is_Integer(n)]' As for the warnings not being printed, in the loop you are maybe not considered to be in Python global scope? I cannot say. Nick --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---