This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients pitrou, serhiy.storchaka, twouters
Date 2015-09-05.21:29:26
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1441488567.65.0.369817501077.issue25011@psf.upfronthosting.co.za>
In-reply-to
Content
When press tabulation just after the dot, the output is too long. It contains all attributes, most of them are dunder names.

>>> int.
int.__abs__(            int.__doc__             int.__int__(            int.__pos__(            int.__round__(          int.__truediv__(
int.__add__(            int.__eq__(             int.__invert__(         int.__pow__(            int.__rpow__(           int.__trunc__(
int.__and__(            int.__flags__           int.__itemsize__        int.__prepare__(        int.__rrshift__(        int.__weakrefoffset__
int.__base__(           int.__float__(          int.__le__(             int.__qualname__        int.__rshift__(         int.__xor__(
int.__bases__           int.__floor__(          int.__lshift__(         int.__radd__(           int.__rsub__(           int.bit_length(
int.__basicsize__       int.__floordiv__(       int.__lt__(             int.__rand__(           int.__rtruediv__(       int.conjugate(
int.__bool__(           int.__format__(         int.__mod__(            int.__rdivmod__(        int.__rxor__(           int.denominator
int.__call__(           int.__ge__(             int.__module__          int.__reduce__(         int.__setattr__(        int.from_bytes(
int.__ceil__(           int.__getattribute__(   int.__mro__             int.__reduce_ex__(      int.__sizeof__(         int.imag
int.__class__(          int.__getnewargs__(     int.__mul__(            int.__repr__(           int.__str__(            int.mro(
int.__delattr__(        int.__gt__(             int.__name__            int.__rfloordiv__(      int.__sub__(            int.numerator
int.__dict__            int.__hash__(           int.__ne__(             int.__rlshift__(        int.__subclasscheck__(  int.real
int.__dictoffset__      int.__index__(          int.__neg__(            int.__rmod__(           int.__subclasses__(     int.to_bytes(
int.__dir__(            int.__init__(           int.__new__(            int.__rmul__(           int.__subclasshook__(   
int.__divmod__(         int.__instancecheck__(  int.__or__(             int.__ror__(            int.__text_signature__  

Proposed patch hides underscored names and show dunder names only if a prefix starts with '__', and private members only if a prefix starts with '_'.

>>> int.
int.bit_length(  int.conjugate(   int.denominator  int.from_bytes(  int.imag         int.mro(         int.numerator    int.real         int.to_bytes(
>>> int.__
int.__abs__(            int.__divmod__(         int.__init__(           int.__neg__(            int.__rlshift__(        int.__sub__(
int.__add__(            int.__doc__             int.__instancecheck__(  int.__new__(            int.__rmod__(           int.__subclasscheck__(
int.__and__(            int.__eq__(             int.__int__(            int.__or__(             int.__rmul__(           int.__subclasses__(
int.__base__(           int.__flags__           int.__invert__(         int.__pos__(            int.__ror__(            int.__subclasshook__(
int.__bases__           int.__float__(          int.__itemsize__        int.__pow__(            int.__round__(          int.__text_signature__
int.__basicsize__       int.__floor__(          int.__le__(             int.__prepare__(        int.__rpow__(           int.__truediv__(
int.__bool__(           int.__floordiv__(       int.__lshift__(         int.__qualname__        int.__rrshift__(        int.__trunc__(
int.__call__(           int.__format__(         int.__lt__(             int.__radd__(           int.__rshift__(         int.__weakrefoffset__
int.__ceil__(           int.__ge__(             int.__mod__(            int.__rand__(           int.__rsub__(           int.__xor__(
int.__class__(          int.__getattribute__(   int.__module__          int.__rdivmod__(        int.__rtruediv__(       
int.__delattr__(        int.__getnewargs__(     int.__mro__             int.__reduce__(         int.__rxor__(           
int.__dict__            int.__gt__(             int.__mul__(            int.__reduce_ex__(      int.__setattr__(        
int.__dictoffset__      int.__hash__(           int.__name__            int.__repr__(           int.__sizeof__(         
int.__dir__(            int.__index__(          int.__ne__(             int.__rfloordiv__(      int.__str__(            

(The completion of int._ returns nothing because int has no private members).
History
Date User Action Args
2015-09-05 21:29:27serhiy.storchakasetrecipients: + serhiy.storchaka, twouters, pitrou
2015-09-05 21:29:27serhiy.storchakasetmessageid: <1441488567.65.0.369817501077.issue25011@psf.upfronthosting.co.za>
2015-09-05 21:29:27serhiy.storchakalinkissue25011 messages
2015-09-05 21:29:26serhiy.storchakacreate