Avatar ·

Para que serve @staticmethod em Python

📁 decorador, método, python, IA

Existe uma classe printer. Ela tem 2 métodos que fazem a mesma coisa. A diferença é que um dos métodos tem o decorador @staticmethod, e o outro não. Mas eu consigo chamar ambos os métodos sem criar uma instância da classe.

class printer():    ''' Teste @staticmethod '''    def not_static_print(self, text = 'Example Text'):        print(text)    @staticmethod    def static_print(text = 'Example Text'):        print(text)                    
Avatar ·

Estritamente falando, existem vários interpretadores da linguagem Python, escritos em diferentes linguagens de programação.

A implementação de referência é a implementação do interpretador em C - CPython.

Existem também implementações do interpretador em Java (Jython), em .Net (IronPython) e até mesmo no próprio Python (PyPy).

Na maioria dos casos, a implementação de referência é suficiente.

Não confunda CPython com Cython - são coisas diferentes. O primeiro é um interpretador, o segundo é uma extensão para a linguagem. Como o CPython é escrito em C, é possível usar estruturas específicas do C nele. É disso que o projeto Cython trata - no código Python, você pode declarar uma estrutura da linguagem C e depois trabalhar com ela. Vale dizer que isso é extremamente raro e usado em projetos muito específicos.

Programas em Python são traduz

Faça login para deixar uma resposta

Blogs