Convert an entire txt file. Python

Asked

Viewed 748 times

0

Good morning. I am a beginner in Python language, I use Windows 8.1, id Pycharm, version 3.6.4. At first opening the file has not been the problem, before converting it to integer number. Only then can I establish the desired filters. I started seeing the pandas library models for opening but it wasn’t quite what I needed.

arquivo = open('jogos.txt', 'r')
# EXEMPLO DO ARQUIVO: 1600 (11/02/2014) 50 56 10 35 30 21 20 58
                    # 1610 (10/03/2014) 02 12 11 54 35 36 60 55
# vários sorteios até 1620 (20/04/2014) 40 15 12 17 25 51 38 24
# E como converter de strings para números inteiros.

for linha in arquivo:
    print(linha)
arquivo.close()
# E depois pode selecionar o sorteios desejados, para estabelecer que tipo de  filtros quero aplicar.
  • Thanks, Noobsaibot for the corrections.

  • Welcome to [en.so]. To format the code, you can select the whole code and hit the shortcut CTRL+K or click the button {} in the editor. Do the [tour] to find out how the site works, if you need help, you can go to [help].

1 answer

0


Come on

arquivo = open('jogos.txt', 'r')

#Vou armazenar os dados aqui
dados = []

for linha in arquivo:
    linha = linha.strip('\n')       #Isso vai remover o '\n' do fim da linha
    dados.append(linha.split(' '))  #Isso vai separar os dados
print(*dados,sep='\n')
#output:
# ['1600', '(11/02/2014)', '50', '56', '10', '35', '30', '21', '20', '58']
# ['1610', '(10/03/2014)', '02', '12', '11', '54', '35', '36', '60', '55']
# ['1620', '(20/04/2014)', '40', '15', '12', '17', '25', '51', '38', '24']

#recuperando um dados por exemplo
print('O maior valor de {} e:{}'.format(dados[0][0],dados[0][9]))

Another way to treat this is to create a dictionary:

arquivo = open('jogos.txt', 'r')

    dados = {}
    for linha in arquivo:
        linha = linha.strip('\n')       #Isso vai remover o '\n' do fim da linha
        dados[int(linha[0:4])] = linha[18:].split(' ')
        #converti pra int, lembra que vc esta trabalho com strings

The point here is that I created a dictionary for you to access the values via id. If that’s not what you want, comment there.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.