joao0212 Postado Junho 30, 2016 Denunciar Share Postado Junho 30, 2016 (editado) Prezados, bom dia!! Estou aprendendo python, após alguns anos de programação em java. Resolvi estudar bem detalhado, pra me familiarizar com a nova linguagem. Hoje venho com uma dúvida sobre manipulação de arquivos. Eu tenho um arquivo .txt que contém 102 linhas. Fiz um programa pra ler esse arquivo da seguinte maneira: lerTudo = open('C:\Users\joao.martins\Documents\\tabela.txt', 'r') for i in range(103): lerTudo.readline() lerTudo.close() Dessa maneira ele lê todo o conteúdo do arquivo. Porém minha dúvida é a seguinte: Tem como eu fazer um for no range sem um vf(valor fim) declarado? No caso de eu não saber quantas linhas eu tenho no arquivo, como faria para percorrer até o fim? Como disse, sou novo na linguagem, e acredito que isso seja simples, porém não encontrei nenhuma forma de fazê-lo. Desde já agradeço a atenção de todos. Editado Junho 30, 2016 por joao0212 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 paulo_henrique Postado Junho 30, 2016 Denunciar Share Postado Junho 30, 2016 Você pode usar a função "readlines()", ela retorna uma lista em que cada elemento é uma linha do arquivo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 joao0212 Postado Junho 30, 2016 Autor Denunciar Share Postado Junho 30, 2016 1 hora atrás, paulo_henrique disse: Você pode usar a função "readlines()", ela retorna uma lista em que cada elemento é uma linha do arquivo. Paulo, Realmente tinha tentado usar o readlines antes, mas estava fazendo o for errado, depois da sua dica, pensei bem e agora deu certo. Dessa maneira aqui: >>> x = open('C:\Users\joao.martins\Documents\\tabela.txt', 'r') >>> lst = x.readlines() >>> for i in range(len(lst)): ... print lst[i] Obrigado, cara ... Espero ter mais dúvidas para poder debater com a galera ... Abraço!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
joao0212
Prezados, bom dia!!
Estou aprendendo python, após alguns anos de programação em java.
Resolvi estudar bem detalhado, pra me familiarizar com a nova linguagem.
Hoje venho com uma dúvida sobre manipulação de arquivos.
Eu tenho um arquivo .txt que contém 102 linhas.
Fiz um programa pra ler esse arquivo da seguinte maneira:
lerTudo = open('C:\Users\joao.martins\Documents\\tabela.txt', 'r') for i in range(103): lerTudo.readline() lerTudo.close()
Dessa maneira ele lê todo o conteúdo do arquivo.
Porém minha dúvida é a seguinte: Tem como eu fazer um for no range sem um vf(valor fim) declarado?
No caso de eu não saber quantas linhas eu tenho no arquivo, como faria para percorrer até o fim?
Como disse, sou novo na linguagem, e acredito que isso seja simples, porém não encontrei nenhuma forma de fazê-lo.
Desde já agradeço a atenção de todos.
Editado por joao0212Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.