Jump to content

Thanael

Pessoal da TecnoSpeed
  • Contagem de Conteúdo

    217
  • Ingressou

  • Última visita

  • Dias Ganhos

    28

Postagens postado por Thanael

  1. Olá @cmoreti tudo bem?

    Uma maneira que talvez funcione é obter o texto que está entre UPDATE e SET. 
    tu pode usar o find, para obter a posição do UPDATE e do SET ai obter somente a string que está entre este espaço. 

    comando = UPDATE `cidade_ns_prod`.`nomedaminhatabela` SET `campo` = 'ca' where (`campo_id` = '3151995');

    Realizando isso ficaria 

    teste = `cidade_ns_prod`.`nomedaminhatabela`

    Agora basta verificar obter uma lista desta string utilizando o .split('.') e passando aquele . que separa as duas palavras que o seu resultado será. 

    lista = [`cidade_ns_prod`, `nomedaminhatabela`] 

    Ai tu já sabe que o index que tu procura é 0.  

    Espero que dessa maneira funcione, caso mesmo assim não funcione, ai procuro outro jeito ou me avisa que tento criar o código em si e lhe enviar.

    • Curtir 1
  2. Antes de explicar como agendar o desligamento da sua máquina através do Python gostaria de lhe fazer uma breve provocação

    "Quantas vezes você teve de deixar seu computador ligado a noite toda para finalizar um download ou alguma atividade? "

    Provável que assim como eu você já teve de fazer isso diversas vezes e acabou deixando seu computador ligado a noite toda sendo que a atividade que estava realizando levaria algumas poucas horas. 

    Com base nisso pesquisei algumas maneiras de agendar o desligamento da maquina via comando e consegui encontrar a solução para os meus problemas que consiste no comando mágico que é:

    shutdowmn -s -t 3600 

    Lembrando que coloquei 3600 acima para que meu computador seja desligado após 1 hora (3600 segundos).

    Mas agora você deve estar se perguntando "Mas onde é que o Python entra nisso ? "
    Então provável que em algum momento você enjoe de toda vez ter que abrir o CMD (prompt de comando) digitar o comando e calcular qual o período desejado e converter isso para segundos.... 
    E é ai que o Python entra, possibilitando automatizar todos esses processos, portanto vou adicionar abaixo uma ideia de código para realizar este mesmo processo, com um código muito simples.

    import os
    
    while True:
        numero_decisao = int(input('''Agendar Desligamento da Máquina
    
        Escolha entre minutos e horas
        [0] - Minutos
        [1] - Horas
    
        Sua decisão: '''))
    
        if numero_decisao == 0:
            decisao = 'Minutos'
        elif numero_decisao == 1:
            decisao = 'Horas'
        else:
            print('Digite um número válido!')
            continue
            
        print(f'\nÓtimo você selecionou {decisao}\n')
        break
        
    tempo = int(input(f'Após quantos(as) {decisao}  deseja que seu computador seja desligado? '))
    
    print(f'\nÓtimo seu computador será desligado após {tempo} {decisao}\n\n')
    
    if decisao == 'Minutos':
        tempo = tempo*60
    elif decisao == 'Horas':
        tempo = (tempo*60)*60
        
    os.system(f'shutdown -s -t {tempo}')
    
    cancelar = int(input('''Deseja cancelar o desligamento? 
    [0] - Sim
    [1] - Não
    
    Sua resposta: '''))
    
    if cancelar == 0:
        os.system('shutdown -a')
        print('\nPronto! Seu Agendamento foi cancelado\n')
    else:
        print('\nObrigado por utilizar este programa!\n')

    Exemplo de Output (Saída)

    image.png

    Lembrando que esta é uma maneira de realizar esse processo, existem diversas outras, algumas mais práticas com a utilização de funções e tratamento de erros. Porém neste momento gostaria apenas de passar uma maneira com uma lógica e código mais simples para facilitar na compreensão. 

    Caso queira criar algo mais detalhado com uma interface gráfica simples sugiro dar uma olhada neste repositório.

    Espero que esse conteúdo tenha lhe ajudado de alguma forma! 

  3. Olá @bmellorj tudo bem?

    Então, nos processos que utilizei o pyautogui eram processos que não necessitava de nenhuma verificação, mas como no seu caso é necessário realizar algumas verificações, como por exemplo encontrar os botões e verificar se foram clicados. Não sei exatamente como lhe ajudar, e nem se o pyautogui é a melhor ferramenta para isso.

    Ouço muita gente comentar de utilizar o Selenium para realizar as automações, sugiro dar uma pesquisada nele para ver se pode ser utilizado e lhe ajudar. 

    Infelizmente eu não vou conseguir lhe ajudar neste processo, vamos torcer para que alguém consiga lhe ajudar nesta sua automação. 😅

     

  4. Olá @almeida tudo bem?

    Pelo que entendi no seu código você ja possui armazenado a quantidade de votos de cada candidato correto? portanto basta apenas realizar um if e printar quem ganhou.

    if candidato_1 > candidato_2:
      print(f'O candidato 1 ganhou, possuindo {candidato_1} votos')
    elif candidato_1 == candidato_2:
      print(f'Houve um Empate entre os 2 candidatos')
    else:
      print(f'O candidato 2 ganhou, possuindo {candidato_2} votos')

    Espero que seja isso que precise, caso contrario estou a disposição para lhe ajudar.

  5. Olá @Ramon Arpoador tudo bem?

    Existem diversas formas de realizar isso, irei deixar abaixo alguns artigos que possam lhe ajudar com sua necessidade.

    • ENVIAR E-MAIL PELO GMAIL UTILIZANDO PYTHON -> Link
    • ENVIAR MENSAGENS AUTOMÁTICAS NO WHATSAPP USANDO PYTHON -> Link
    • ENVIAR MENSAGEM AO USUÁRIO DO TELEGRAM USANDO PYTHON -> Link
    • Como enviar um SMS em Python -> Link
    • Automatizar Envio de Mensagens no WhatsApp Usando Python (Vídeo) -> Link

    Estas são algumas ideias de como realizar isso, espero que lhe ajude 👍

  6. Olá @Oliver79 tudo bem? 

    Acredito que para criar essas ferramentas WEB com python os melhores Frameworks são o Django e o Flask. 

    Nunca estudei muito a fundo sobre eles, porém ouço muito que o Flask possui uma curva de aprendizagem mais baixa, e é o mais indicado para Desenvolvimento WEB de pequenos projetos. 

    Já o Django trata-se do framework web python mais conhecido e muito mais robusto aumentando assim a possiblidade de coisas a controlar e a criar, porém com uma dificuldade um pouco maior para aprender.

    Lembrando que isso é para desenvolver o Back end de sua aplicação. 

    • Curtir 1
  7. Entendi, da uma olhada no nome do seu Database, verifica se as informações de conexões estão de fato corretas. 
    Acredito que o nome do seu database deveria ser 'crud' ou o .py faz parte do nome ?

  8. Olá você que chegou aqui deve estar curioso para saber quais as maneiras para printar variaveis em python, portanto vou lhe mostrar algumas das  maneiras que podemos utilizar para printar variáveis e mostrar qual delas eu utilizo

    Obs: Já vou lhe dar um Spoiler, a ultima maneira mostrada é a mais interessante. 

    Maneira tradicional utilizando virgula (,)
    A maneira mais comum de printar variáveis e concatenar string é utilizando a , segue abaixo um exemplo de sua utilização

    nome = 'Thanael'
    linguagem = 'Python'
    print('meu nome é ',nome, 'e gosto da linguagem ', linguagem)
    # meu nome é Thanael e gosto da linguagem  Python

    Utilizando format strings
    Essa é uma maneira mais versátil onde você concatena a variável no meio do texto sem ter de ficar usando as virgulas e aspas

    nome = 'Thanael'
    linguagem = 'Python'
    print('meu nome é {} e gosto da linguagem {}'.format(nome,linguagem))
    # meu nome é Thanael e gosto da linguagem Python

    Utilizando f'strings'
    Agora vou mostrar uma maneira que eu particularmente gosto e utilizo mais, por ser mais rápida e deixar o código mais fácil de ser interpretado. Esta maneira é semelhante ao format string porém você especifica a variável que será mostrada dentro do { variavel }. Segue abaixo alguns exemplos

    nome = 'Thanael'
    linguagem = 'Python'
    print(f'meu nome é {nome} e gosto da linguagem {linguagem}')
    # meu nome é Thanael e gosto da linguagem Python

    Perceba como o código fica mais simples é você sabe qual variável será concatenada ao texto simplesmente vendo seu nome dentro dos { }. 

    E você já conhecia essas maneiras ? Qual delas você utiliza e gosta mais ?

    • Curtir 3
  9. Olá @Lumiere tudo bem ?
    Obrigado pela paciência. 

    Vamos lá existem diversas maneiras de obter somente o numero que você deseja, a que eu sugiro é verificar se este padrão (NOME - NUMERO - ITR - 2022 - TEXTO - Recibo.pdf) segue para todos os registros, caso siga, basta utilizar o seguinte. 

    string = 'JasperReports - 13079980-ITR-2022-ORIGI-Recibo.pdf'
    
    # Tranformar em uma lista com o SPLIT utilizando como separador o ' - '
    # lista = ['JasperReports ', ' 13079980', 'ITR', '2022', 'ORIGI', 'Recibo.pdf']
    lista = string.split('-')
    
    # Obter o numero com base na sua posição. 
    # numero = ' 13079980'
    numero = lista[1]
    
    # Remover este espaço em branco que existe com o STRIP()
    numero = numero.strip()

    Para deixar mais simples tu pode simplesmente fazer

    string = 'JasperReports - 13079980-ITR-2022-ORIGI-Recibo.pdf'
    numero = string.split('-')[1].strip()

    A partir dai você já tem o número que deseja, portanto agora precisa criar a pasta com este nome

    import os 
    
    path = f'C:\\Users\\thanael.butewicz\\Documents\\Data Science\\{numero}'
    os.makedir(path)

    Isso irá criar a pasta cujo nome será o numero armazenado anteriormente.
    Agora basta mover o arquivo para esta pasta nova.

    import shutil
    # caminho original do arquivo File seria o nome do arquivo (aquele extenso.pdf)
    original = caminho_arquivo_original
    target =  caminho_desejado_aquele_criado
    
    # Mover
    shutil.move(original, target)

    A grosso modo isto é o que precisa para realizar essa automação, basta adicionar dentro de um IF e pronto. 
    Espero que isso lhe ajude, também estou a disposição para lhe ajudar caso necessite.

  10. Olá @nilton santos poderia mandar um print do erro que aconteceu ? 

    Somente com estas informações não consigo lhe ajudar, o que pode estar acontecendo é o fato do db não estar sendo passado como parâmetro, sugiro passar a conexão como parâmetro ou criar a conexão com o banco dentro da função.

    Porém se você puder mandar um print com o erro, ai conseguirei lhe ajudar com mais precisão. 

  11. Olá  @laurino então pelo que entendi aqui o find_element é uma função da biblioteca selenium, que você importou no inicio do seu código. 

    Tenta ajustar o seu código onde você chama o find_element para webdriver.find_element e testa para ver se irá funcionar, caso mesmo assim não funcione, sugiro que você pesquise um pouco mais sobre essa biblioteca para entender qual a maneira correta de utilizar essa função. 

    Segue abaixo alguns links que possam lhe ajudar nos seus estudos.

  12. Olá @laurino tudo bem?

    Seu erro está no fato do find_element estar sendo chamado antes mesmo de ser criado, ou seja ele ainda não existe. 

    Sugiro verificar se essa função find_element( ) está de fato sendo criada, caso ela esteja sendo criada abaixo do código, recomendo mover ela para o topo, pois é uma boa prática criar as funções logo no inicio do seu código. 

    Tenta realizar essas mudanças e diz se funcionou, caso não funcione estou a disposição para lhe ajudar a encontrar a solução. 👍

  13. Olá @vmatheus tudo bem ?

    Você consegue sim executar isso através de um script python. 
    Segue abaixo uma lógica para realizar isso. 

    • Ler o arquivo de texto (.txt) com o python e armazenar os nomes das pessoas em uma lista.
    • Percorrer a pasta verificando os nomes dos arquivos.

    Um exemplo de código seria algo como 

    import os 
    import shutil #Lib para mover arquivos
    
    # Ler o arquivo txt contendo os nomes
    file_names = open('untitled.txt').read()
    # Exemplo do txt = 'teste1,teste2,teste3'
    # Criar uma lista com os nomes, se antentar ao separador entre os nomes no meu caso o separador é ','
    file_names = file_names.split(',')
    
    # Salvar o caminho da pasta
    path = '/home/ec2-user/etls/Responder casa do DEV/'
    # Obter todos os arquivos desta pasta
    arquivos = os.listdir(path)
    
    # Percorrer por cada arquivo
    for file in arquivos:
      
      	# Verificar se o arquivo está no arquivo de nomes
        if file not in file_names:
            print(f'O Arquivo {file} não está presente no arquivo de nomes, portanto irei move-lo')
            # Setar o caminho do arquivo
            original = path+file
            # Escolher para onde deseja enviar ele
            target =  '/home/ec2-user/etls/Responder casa do DEV/Pasta DESEJADA'
    
            # Mover
            shutil.move(original, target)

    A grosso modo é praticamente isso que precisa ser realizado. 
    Segue alguns links que possam lhe auxiliar. How to Move a File or Directory in Python, os.listdir()

    Espero que isso resolva sua dúvida caso contrario, estou a disposição para lhe ajudar. 👍

    • Amei 1
  14. Olá @cmoreti tudo bem?

    Para remover eles basta realizar o seguinte. 

    string = 'CRCC\ITAUCORP-AM/JRS'
    string.replace('\\','teste')

    No python para ler o   como  tu deve utilizar \ \ pois somente uma contrabarra diz ao python que você usará algum comando como \n que realiza uma quebra de linha na string.
    Sendo assim basta utilizar duas \ \  que você sinalizará que se trata de uma contrabarra.

    Espero que isso lhe ajude, também estou a disposição para lhe ajudar no que precisar. 👍

    • Curtir 1
  15. Olá tudo bem?

    Você conseguiu acessar de fato os arquivos ? seu erro está no fato dele não encontrar o arquivo ou pasta. 

    Verifica se o caminho está correto. 
    Uma dica que acho que pode lhe ajudar e buscar somente por arquivos .txt presentes neste caminho, para isto basta realizar o seguinte.
     

    import re
    import os
    
    path = 'c://Moreti//ArquivosProjetoPython//SIGBANCOS//'
    # path = r'c:/Moreti/ArquivosProjetoPython/SIGBANCOS/'
    
    #For para percorrer dentro da pasta passada anteriormente
    for file in os.listdir(path):
    	#If verificando se o arquivo e extensão .txt
        if re.search('txt', file):                    
            #Abrir o arquivo
            with open(file, 'rb') as pdf:
                print(file)
         
                # Salvar o texto dele em uma variavel, array ou dicionario
          
     # Criar um novo arquivo passando todos conteudos dos txt armazenado

    Eu utilizaria esta lógica acima, espero que talvez possa lhe dar uma ideia, caso contrario estou a disposição para lhe auxiliar no que precisar.

    • Curtir 1
  16. Olá tudo bem ? 

    Poderia explicar mais a fundo qual o processo que você esta executando, pois de fato o pyautogui ele realiza comandos controlando seu mouse e teclado, porém pode ser que o processo que você esteja executando necessite de alguma interação que você não consiga realizar apenas com o pyautogui. 

    Se puder me explicar mais afundo o seu processo de automação, exemplo

    • Abrir o aplicativo
    • Clicar no botão LAUCHER
    • Clicar no botão REPORTS 
    • e assim por diante.

    Como você sabe que o botão REPORTS foi clicado? é algo somente visual ? o programa não avança ? se puder responder essas perguntas podemos procurar uma solução para lhe ajudar.

  17. Olá @Ana_t tudo bem?

    Problema do código está na utilização das funções, você não a está chamando corretamente e nem passando os parâmetros que ela necessita. Veja abaixo um exemplo de como deveria ser a chamada da função. 

    # O sb e o I são parametros que devem ser passados quando chamar a função 
    def vinss(sb): 
        i = 0.08
        return sb*i
      
    # Exemplo de chamar a função
    y = vinss(x,i) # Perceba que você precisa passar os parametros quando chama a função

    Portanto será necessário ajustar seu código passando os parâmetros para que as funções funcionem adequadamente, lembrando que mesmo se não tiver parâmetros deve-se chamar ela adicionando o ( ) ao final.

    Segue abaixo como ficaria seu código ajustado.

    import math
    
    def sb(g,h):
        return float(g)*float(h)
    
    def vinss(sb):
        return sb *0.08
    
    def vir(sb): 
        return sb * 0.11
    
    def vsd(sb):
        return sb * 0.05
    
    def sl(sb,vinss,vir,vsd):
        return sb - (vinss + vir + vsd)
    
    g = input("Digite quanto você ganha por hora:\n")
    
    h = input("Digite o número de horas trabalhadas no mês:\n")
    
    # Chamar as funções
    
    # Perceba como é chamada a função, passando parametros
    bruto = sb(g,h)
    
    inss = vinss(bruto)
    
    ir = vir(bruto)
    
    sd = vsd(bruto)
    
    liquido = sl(bruto,inss,ir,sd)

    Espero que isso resolva sua dúvida, sugiro também pesquisar mais sobre como utilizar funções no Python, segue abaixo um artigo do W3Schools que pode ser de muita ajuda. 
    Artigo: Python Functions

    Qualquer coisa estou a disposição para lhe ajudar. 👍

  18. Olá pessoal! Hoje vou comentar um pouco com vocês sobre como estilizar um DataFrame e sim, é possível estilizar um DataFrame, para apresentar dados ou até mesmo conseguir visualizar melhor seus dados.
     

    Pandas.Style
    Essa é a função do pandas onde conseguimos estilizar um DataFrame para facilitar na visualização de seus dados. A partir dela conseguimos especificar diversos atributos a partes do DataFrame como por exemplo, cor de fundo da celula, cor das letras, fonte das letras, tamanhos, negrito e muito mais formatações, para entender um pouco mais sobre o que podemos fazer sugiro que leiam a documentação.
    Documentação: Table Visualization

    Segue abaixo um exemplo do que pode ser feito.

    image.png

    Acima temos um DataFrame contendo dados de indicadores de ações, porém com o DataFrame do jeito que está é muito difícil você conseguir visualizar pontos como, "Quais ações tem os melhores indicadores de rentabilidade (ROE, ROIC, M. EBITDA)", ou até mesmo entender quais as empresas que estão mais alavancadas (Dív Líquida/EBITDA), é claro que poderíamos ordenar os dados usando um sort_values( ), porém ainda ficaria complicado para compreendermos os dados caso seu número seja muito grande.

    Portanto vamos melhorar a visualização destes dados.

    def good_value():
        return 'background-color: #2E924C; font-weight: bold'
    
    def medium_value():
        return 'background-color: #FFFFE5; color:black; opacity: 95%'
    
    def bad_value():
        return 'background-color: red; font-weight: bold'
    
    df_view = (
    df_view.style
                # Ajustar as casas decimais
                .format('{:.2f}', na_rep='MISS',subset=[coluna  for coluna in df_view.columns if coluna not in ('acao','Subsetor de Atuação','link')])
                .format('{:.2f}%', na_rep='MISS',subset=['Valorização (12m) %','M. EBITDA %','ROE %','ROIC %','CAGR Receitas 5 anos %','CAGR Lucros 5 anos %'])
                # Indicadores de Preço
                .applymap(lambda v: good_value() if (v > 0) and (v < 20)  else medium_value(), subset=['P/L'])
                .applymap(lambda v: good_value() if (v > 2)  else (medium_value() if v >= 0 and v <= 2 else bad_value()), subset=['P/VP'])
                 #Indicadores de Crescimento
                .applymap(lambda v: good_value() if (v < 1) and (v > 0)  else (medium_value() if v >= 2 and v <= 2 else bad_value()),subset=['PEG Ratio'])
                # Rentabilidade
                .background_gradient(cmap='YlGn',subset=['M. EBITDA %','ROE %','ROIC %'])
                # Indicadores de Individamentos
                .applymap(lambda v: good_value() if (v < 1)  else (medium_value() if v >= 1 and v<= 3 else bad_value()), 
                          subset=['Dív. líquida/EBITDA'])
    )

    Como exemplificado no código acima, podemos setar diversas formatações para o DataFrame, ou seja, as possibilidades são muitas, acima realizei algumas configurações de visualização, como ajustar cores conforme os valores de alguns indicadores, ou até mesmo colorir toda a coluna de acordo com seus valores, indo do menor ao maior. 

    Segue abaixo uma imagem de como ficou esse DataFrame depois de estiliza-lo.

    image.png

    Perceba que agora ficou muito mais fácil de visualizar os dados e identificar as ações que possuem maiores indicadores de rentabilidade, ou até mesmo quais ações estão mais alavancadas. 

    Recomendo muito utilizar essas formatações caso tenha que apresentar os dados ou até mesmo caso queira visualizar melhor seus dados.  Você já conhecia essa função de estilizar DataFrames do pandas?

    • Curtir 1
  19. Olá @web_trechosbr tudo bem ?

    Não entendi muito bem sua pergunta, mas caso você deseje apenas conseguir o maior ou menor valor de um array, basta usar as funções min e max do python.

    Exemplo 

    lista = [1,2,4,7,98,2,10]
    
    maior = max(lista) # Obtera o maior valor
    menor = min(lista) # Obtera o menor valor

    Caso não seja isso, poderia me explicar novamente o que deseja 😅

  20. Olá @cmoreti conseguiu resolver ? 

    Sugiro realizar a leitura dos dados através do comando pd.read_sql( ), segue o link para sua documentação

    df = pd.read_sql('select * from table', conexao_banco)

    Se mesmo assim ficar muito pesado a consulta você pode ajustar a consulta SQL para pegar por exemplo 1000 registros com um 'SELECT * FROM table LIMIT 1000'

    • Curtir 1
  21. Olá Pessoal, hoje vou mostrar a vocês algumas maneiras de criar um DataFrame com a biblioteca Pandas do Python 😀

    Antes de mostrar essas maneiras, vou comentar brevemente sobre o que é um DataFrame.
    Um DataFrame consiste em uma estrutura na qual conseguimos realizar manipulação e analise de dados através do Python, ele se assemelha muito a uma tabela ou planilha no excel, segue abaixo um exemplo de visualização de um DataFrame.

    image.png
     

    Maneiras de se criar um DataFrame
    Lembre-se de importar a biblioteca com um import pandas as pd

    • CSV
      Vamos começar com a maneira mais popular de se criar um DataFrame que é a partir de um arquivo .csv para isso basta que tenhamos o caminho para o arquivo .csv, caso queira descobrir mais sobre seus parâmetros sugiro ler sua documentação
      df = pd.read_csv('arquivo.csv')
    • SQL
      Uma maneira muito utilizada para criar um DataFrame é a partir de consultas em banco de dados, para realizar isso basta que tenhamos a conexão com o banco de dados utilizados. Um ponto importante é descobrir como criar a conexão com o seu banco de dados, para isso basta pesquisar termos como "Conectar PostgresQL com python" ou até mesmo "Firebird com Python"
      df = pd.read_sql('select * from table', conexao)

       

    • Excel
      Para criarmos o DataFrame através de uma planilha do excel basta realizarmos o seguinte.
      df = pd.read_excel('arquivo.xlsx')

     

    • Json
      Podemos criar DataFrames através de arquivos Json os quais são muito utilizados para transferência de dados via API, para isso basta fazermos.
      df = pd.read_json('arquivo.json')

     

    • Dicionarios do Python
      Exato podemos criar DataFrames com base em dicionários python, para isso precisamos ter um dicionário devidamente estruturado, uma sugestão é ler a documentação e entender quais as formas de estruturar o dicionário
      dicionario = {'nome':['carlos','thanael'], 'idade':[20,18]}
      df = pd.DataFrame(dicionario)

     

    • HTML
      Isso mesmo podemos até criar DataFrame com base em tabelas que estão dentro de um HTML, por exemplo de um site. Lembrando que esta maneira trás uma lista com todos os DataFrames encontrados dentro de um site, portanto deve-se analisar qual o DataFrame corresponde a tabela que você deseja. Também precisamos nos atentar a integridade dos dados, visto que esta pode não ser a melhor maneira de trazer os dados.
      dfs = pd.read_html('https://www.terra.com.br/esportes/futebol/brasileiro-serie-a/tabela/')
      df = dfs[0]

    Estas são somente algumas das diversas maneiras que existem de se criar um DataFrame, caso queira conhecer mais digite pd.read  e veja o complete que o pandas sugere, ali mostram as mais diversas formas de se criar um DataFrame.
    Outro ponto importante é que cada maneira possui sua particularidade, portanto sugiro sempre procurar a documentação da maneira que utilizar para criar seu DataFrame da forma mais adequada possível.


    E você já conhecia essas maneiras de criar o DataFrame?
    Conhece e utiliza outra maneiras de criar DataFrames?
    Compartilha conosco deixando ela em seu comentário logo abaixo.

    • Curtir 1
×
×
  • Create New...