Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Aula 08 Exercício 11

Boa noite, fiz o seguinte código no idle (nome do arquivo é: teste_dia)

# -*- coding: utf-8 -*-

def data():
    def _init_(self, dia, mes, ano):
        self.dia = dia
        self.mes = mes
        self.ano = ano

    def imprimir(self):
        print '%s/%s/%s' % (self.dia, self.mes, self.ano)

porém ao executar no shell o comando

>>> from teste_dia import data
>>> dias = data(25, 11, 1985)

aparece o seguinte erro:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    dias = data(25, 11, 1985)
TypeError: data() takes no arguments (3 given)

alguém consegue me explicar?

1 resposta
solução!

Boa tarde Thiago!

O self é usado quando você cria o método ou construtor de uma classe e não uma função isolada como você criou, por isso o erro.