Saltar para o conteúdo
  • YouTube
  • FaceBook
  • Twitter
  • Instagram

Data Analytics Portugal

Análise de Dados e Tutoriais em Vídeo

  • Início
  • Contato
  • Sobre nós
    • O mais recente
    • Escreva para nós
    • Saiba mais informações sobre o nosso site
  • Ligações úteis
  • Glossário
  • Todas as categorias
  • Faq
  • Livestream
  • Alternar o formulário de pesquisa
  • Como posso filtrar os meus dados no Tableau? visualização dos dados
  • Como Adicionar Fórmulas ao Excel usando Python numpy
  • Como automatizar os testes com o Python | teste unitário automatização
  • O que é a análise de dados e porque é importante Artigos
  • ValueError: o padrão não contém grupos de captura Erro de Valor
  • Listas de canais do YouTube - Python Lists Listas Python
  • O que são funções anónimas em Júlia? matriz
  • Listas de canais do YouTube - Python Data Cleansing Limpeza de dados Python

TypeError: o primeiro argumento deve poder ser invocado

Posted on 24 de Julho de 202126 de Fevereiro de 2023 Por admin

Tempo estimado de leitura: 3 atas

Assim, poderá estar a utilizar as Classes Python e ter encontrado o problema TypeError: O primeiro argumento deve poder ser invocado. Então, o que significa o problema e como pode resolvê-lo?

Neste artigo, procuramos explicar como isso pode ocorrer e a solução fácil que se pode aplicar para parar o problema no futuro.

Compreendamos primeiro a chamada Funções/Métodos

Normalmente num programa de pitão de computador, terá de utilizar uma função/método , uma vez que tem a funcionalidade que lhe poupará tempo, e pode ser reutilizada continuamente.

Um exemplo clássico é a impressão ("Olá") que trata de toda a lógica necessária para mostrar isto num ecrã. A sua produção é rapidamente visível, e não há qualquer necessidade de compreender o que se passa no fundo.

Aqui neste exemplo, executámos a função por si só, como resultado, não precisa de apontar para outro lugar para executar a lógica que contém.

O erro que procuramos resolver é parte do problema. Uma função/método pode ser executado por si só, ou a partir de uma Classe.

A diferença que define é que por si só precisa do parêntesis, ou seja (), mas se o chamarmos de dentro de uma classe, então tem de ser tratado de forma diferente.

Ver o Tipo Erro Primeiro Argumento deve poder ser chamado e corrigido

No bloco de código abaixo, temos um bloco de código, que produz o erro que estamos a tentar corrigir.

No seguimento do que foi discutido acima, a linha ofensiva é realçada.

Em particular, o problema reside no progresso da impressão(). Isto foi chamado, mas na realidade, o problema é que quando se tem a lógica escrita desta forma, dá o erro para o qual este post do blogue foi configurado.

Em essência, está a tentar executar o programa a partir desse ponto exacto, o que a pitão não permite.

A remoção do parêntese permite então que o programa vá e encontre o módulo que está a referenciar e depois execute a lógica contida dentro dele.

import schedule
import time

class scheduleprint():

    def printprogress(self):
        print("Start of Processing")
        print("Processing Complete")

    def schedule_a_print_job(self, type="Secs", interval=5):

        if type == "Secs": # Fed from the function paramaters
            schedule.every(interval).seconds.do(self.printprogress())===> The problem is here, remove the () after printprogress.
            # Including the parentheses  after printprogess will throw an error as you cant run that method directly from there you can only call it.

        if type == "Mins": # Fed from the function paramaters
            schedule.every(interval).minutes.do(self.printprogress)
            # Including the parentheses  after printprogess will throw an error as you cant run that method directly from there you can only call it.

        while True:
            schedule.run_pending()
            time.sleep(1) # The number of seconds the Python program should pause execution.

run = scheduleprint() # initiating an instance of the class "scheduleprint"
run.schedule_a_print_job() # running the function contained within the class.

Em resumo, para ajudar a resolver este problema:

(A) Verifique o seu código para ver onde está a chamar um módulo dentro de uma classe.

(B) Em seguida certifique-se de que nessa chamada não existem parênteses, caso contrário não conseguirá encontrar o módulo.

Python, Funções Python, erro de tipo Etiquetas:o primeiro argumento deve poder ser invocado, Aprender pitão, Python, TypeError

Pós navegação

Posto Anterior: TypeError: O objecto 'NoneType' não é iterável
Próximo Post: Como comparar ficheiros CSV para as diferenças

Posts relacionados

  • a planear o seu modelo de aprendizagem da máquina aprendizagem de máquinas
  • como criar uma instância de uma classe classe
  • python construtor self e __init__explicado Python
  • Quantas funções python existem? Python
  • Como automatizar os testes com o Python | teste unitário automatização
  • Quais são as funções Lambda em Python? Python

Selecione seu idioma!

  • English
  • हिंदी
  • Español
  • Français
  • Italiano
  • Deutsch
  • Quais são as excepções incorporadas em Júlia? A programação de Júlia
  • Listas de canais do YouTube - Python DataFrames Python Dataframe
  • como fundir dois dicionários em Python? Python
  • Perguntas de Entrevista ao Dicionário Python Python
  • ValueError: não pode converter NaN de flutuação em número inteiro Valores nulos
  • abrir uma excepção em python classe
  • Quais são as funções Lambda em Python? Python
  • Como corrijo o TypeError: tipo não chocável: 'lista' de erros? Artigos

Copyright © 2023 Data Analytics Ireland.

Tema de PressBook Premium

Este website utiliza cookies para melhorar a sua experiência. Assumiremos que está de acordo com isto, mas pode optar por não participar se assim o desejar. Definições de CookiesACCEPT
Política de Privacidade & Cookies

Visão Geral da Privacidade

Este website utiliza cookies para melhorar a sua experiência enquanto navega pelo website. Destes cookies, os que são categorizados como necessários são armazenados em seu navegador, pois são essenciais para o funcionamento das funcionalidades básicas do site. Também usamos cookies de terceiros que nos ajudam a analisar e entender como você usa este website. Estes cookies serão armazenados no seu navegador apenas com o seu consentimento. Você também tem a opção de optar por não utilizar estes cookies. Mas a opção de exclusão de alguns destes cookies pode ter um efeito na sua experiência de navegação.
Necessário
Sempre habilitado
Os cookies necessários são absolutamente essenciais para que o site funcione correctamente. Esta categoria inclui apenas cookies que garantem funcionalidades básicas e características de segurança do website. Estes cookies não armazenam nenhuma informação pessoal.
Não necessário
Quaisquer cookies que possam não ser particularmente necessários para o funcionamento do site e que sejam utilizados especificamente para recolher dados pessoais do utilizador através de análises, anúncios, outros conteúdos incorporados são denominados cookies não necessários. É obrigatório obter o consentimento do usuário antes de executar esses cookies em seu site.
GUARDAR & ACEITAR