Acessar atributos em literais funciona em todos os tipos, mas não em `int`; porque? [duplicado]
Esta questão já tem uma resposta aqui:
Por que “1.real” é um erro de sintaxe, mas “1 .real” é válido em Python? 3 respostasEu li que tudo em python é um objeto, e como tal eu comecei a experimentar com diferentes tipos e invocando__str__
neles - no começo eu estava me sentindo muito animado, mas depois fiquei confuso.
>>> "hello world".__str__()
'hello world'
>>> [].__str__()
'[]'
>>> 3.14.__str__()
'3.14'
>>> 3..__str__()
'3.0'
>>> 123.__str__()
File "<stdin>", line 1
123.__str__()
^
SyntaxError: invalid syntax
Porquesomething.__str__()
trabalho para "tudo" alémint
?É123
não é umobjeto do tipoint
?