Чтение из файла и разбиение на отдельные списки - PullRequest
0 голосов
/ 28 апреля 2019

Чтение из файла. Затем пытаемся разбить строки на разные списки.

userID = []
fname = []
lname = []
email = []
salary = []
nextLine = file.readline()
while nextLine != '':
    filedata = file.readline().rstrip()
    userID.append(filedata)
    filedata = file.readline().rstrip()
    fname.append(filedata)
    filedata = file.readline().rstrip()
    lname.append(filedata)
    filedata = file.readline().rstrip()
    email.append(filedata)
    filedata = file.readline().rstrip()
    salary.append(filedata)
    nextLine = file.readline()
file.close()
print(userID)

Я пытаюсь заставить программу поместить каждую строку кода в отдельные файлы, перечисленные ниже, и продолжать делать это до тех пор, пока файл не закончится

Результат: программа продолжает цикл и никогда не заканчивается

Ответы [ 2 ]

1 голос
/ 28 апреля 2019

Вы читаете только первую строку из вашего входного файла, а затем зацикливаетесь бесконечно, потому что в цикле отсутствуют новые чтения, поэтому while никогда не будет оцениваться как False из-за отсутствия чтения новых данных.Просто добавьте

nextLine = file.readline()

в конце вашего блока цикла, и все будет хорошо.

0 голосов
/ 28 апреля 2019

Попробуйте это:

import itertools

userID, fname, lname, email, salary = [], [], [], [], []
lists = itertools.cycle([userID, fname, lname, email, salary])

with open("in_file.txt") as infile:
    for line, append_list in zip(infile, lists):
        append_list.append(line)

Ваши списки должны быть заполнены.

...