Ir para conteúdo
Fórum Script Brasil

Graymalkin

Veteranos
  • Total de itens

    8.257
  • Registro em

  • Última visita

1 Seguidor

Sobre Graymalkin

  • Data de Nascimento 25/01/1984

Contatos

  • Website URL
    http://www.gsxbr.net
  • ICQ
    0
  • Yahoo
    graymalkin84

Perfil

  • Gender
    Male
  • Location
    Duque de Caxias - RJ

Últimos Visitantes

11.715 visualizações

Graymalkin's Achievements

0

Reputação

  1. Use os tipos de dados ao declarar as variáveis (caso contrário ele considera como string): Dim dt1 As DateTime = DateTime.Now Dim dt2 DateTime = DateTime.Parse("30/09/2019") Abraços!
  2. Graymalkin

    Dúvida Cruel

    Se o número for inteiro, você pode usar algo assim: numero = raw_input("Digite um número:") if numero.isdigit(): print "É um número!" else: print "Não é um número!" Abraços!
  3. Qual o tamanho do arquivo? Seria bem mais interessante jogar tudo na memória (ler o arquivo inteiro) e depois buscar a informação. Creio que a performance deverá ser melhor. Abraços!
  4. Graymalkin

    Split VBA

    Muito bom, ainda bem que conseguiu resolver o caso. ☺️ Abraços!
  5. Serve on-line? Caso sim, acesse: https://www.onlinegdb.com/online_python_interpreter Abraços!
  6. Graymalkin

    Split VBA

    Faça um teste colocando o texto "teste1-teste2-teste3" na célula A1 e use este código de exemplo: Sub teste() Dim dados() As String Dim d dados = Split(Range("A1").Value, "-") For Each d In dados MsgBox d Next End Sub Abraços!
  7. Você está na máquina onde o PG está instalado? O COPY procura o arquivo localmente no servidor, não vai rolar fazer a partir de um cliente. Abraços!
  8. Graymalkin

    Dúvida com While

    Use um contador, pois diferente do for (onde você tem um número limitado de elementos), o while executa enquanto uma condição estiver sendo atendida. No seu exemplo, 3x4, ele executaria quatro vezes incrementando em 3 o resultado: n1 = int(input("Digite o primeiro valor:")) n2 = int(input("Digite o segundo valor:")) cont = 0 result = 0 while (cont<n2): result += n1 cont += 1 print("Resultado: ", result) Certo? 😉
  9. Aparentemente então a base está corrompida. Uma vez copiei a pasta "data" de um servidor que estava com o HD comprometido por vários bad blocks (que afetaram alguns bancos, mas não afetou o que eu precisava) para outro computador com a mesma versão do PG e funcionou certinho (eu só não conseguia acessar os bancos que não foram copiados completamente). Mas o ideal mesmo seria fazer a restauração pelo backup. Abraços!
  10. Sim, tanto o backup quando a pasta "data" funcionarão, desde que você instale a mesma versão que estava anteriormente. No caso do backup, versões posteriores vão reconhecer também (só não serve tentar usar um backup de uma versão nova em uma versão antiga). Pela instalação antiga você terá como ver qual era a versão usada. Abraços!
  11. Ah tá, eu já ia falar que aqui funcionava normalmente... rsrsrsrs >>> 10 * 0.10 1.0 A vírgula é o nosso separador decimal, mas usa-se o padrão americano quando se programa (então tem que obrigatoriamente usar o ponto no código). Abraços!
  12. O format() apenas coloca os argumentos passados dentro da string, ou seja, {0} vai se tornar o conteúdo de dados[0], e {1} vai se tornar o conteúdo de dados[1] (na primeira linha em que é usado). Daria o mesmo se fizéssemos: dt1 = datetime.datetime.strptime(dados[0] + " " + dados[1], "%Y/%m/%d %H:%M") Apenas o format é uma maneira mais limpa de se formatar strings. Abraços!
  13. Supondo que o seu CSV é assim... 2017/01/01;23:30;2017/01/01;00:30 2017/02/01;23:30;2017/02/01;23:40 2017/03/01;15:45;2017/03/01;17:30 2017/04/10;23:50;2017/04/10;00:30 2017/07/16;23:50;2017/07/17;00:30 ... você poderia fazer isso: import io import datetime import string f = io.open("c:/pasta/teste.csv") linhas = f.readlines() f.close() fout = io.open("c:/pasta/teste_out.csv", "w") for l in linhas: dados = l.replace('\n', '').strip().split(";") dt1 = datetime.datetime.strptime("{0} {1}".format(dados[0], dados[1]), "%Y/%m/%d %H:%M") dt2 = datetime.datetime.strptime("{0} {1}".format(dados[2], dados[3]), "%Y/%m/%d %H:%M") if dt2<dt1: dt2 = dt2 + datetime.timedelta(days=1) dados[2] = dt2.strftime("%Y/%m/%d") print dt1 print dt2 fout.write(string.join(dados, ";") + "\n") fout.flush() fout.close()
  14. Seu servidor está exposto para acesso fora da rede local (ou seja, pela internet)? Tive um problema parecido, só que no meu caso foi um usuário que foi criado com um nome estranho e o usuário postgres deixou de ser superusuário. Creio que tenha sido um bot ou usuário mal intencionado, pois o mesmo se apossou do banco. Fiz backup, desinstalei a versão que tinha, instalei uma versão mais recente (colocando agora uma senha mais segura) e restaurei o banco. Recomendo fazer o mesmo e se for o caso de acesso externo, coloque uma senha mais segura.
  15. Sabendo que o primeiro (e único par) primo é 2, basta testar (if) o resto da divisão (operador %) do número informado, por todos os primos (laço for) até a raiz quadrada dele (math.sqrt()), se o resultado é diferente de zero para todos (operador & ou and) ele é primo e você conta. Estão todas as dicas aí, basta pesquisar e juntar.
×
×
  • Criar Novo...