R. David Murray added the comment:

It's actually almost a FAQ at this point.  The answer is that because of the 
way the parser works (it's a relatively simple parser, and we want to keep it 
that way), the tokenizer sees the '.' as making the token a float, and 
'3.__class__' is not a valid float token. So you have to precede the period by 
something that allows the tokenizer to know it isn't a decimal point.  Parens 
is one way.  Believe it or not, a space is another:

  >>> 3 .__class__
  <class 'int'>

----------
nosy: +r.david.murray
resolution:  -> invalid
stage:  -> committed/rejected
status: open -> closed

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue20692>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to