У меня есть текстовый файл с тремя строками, который я разбил на список списков с именем cleanedFileList
, используя function1()
:
привет, 1
снова, 2
мир, 3
, который после запуска через function1()
выглядит при печати следующим образом, вот что печатает fileOutput
:
[[hello, 1], [again, 2], [world, 3]]
По сути, я пытаюсь создать function2()
, который может добавлять слова в cleanedFileList
в три отдельных списка на основе числового значения во второй позиции. Например, [hello,1]
будет добавлено как 'hello' к l1
, потому что оно несет значение 1 во второй позиции в cleanedFileList
... Аналогично, [again, 2]
будет добавляться как 'снова' до l2
из-за значения 2 во второй позиции
fileInput = open('keywords.txt', 'r')
l1 = []
l2 = []
l3 = []
def function1(file):
cleanedFileList = []
for line in file:
cleanedFileList.append(line.strip().split(','))
return cleanedFileList
fileOutput = function1(fileInput)
def function2(file):
for i in range(len(file)):
if file[i][1] == 1:
l1.append(file[i][0])
if file[i][1] == 2:
l2.append(file[i][0])
if file[i][1] == 3:
l3.append(file[i][0])
return l1, l2, l3
listOutput = function2(fileOutput)
print(listOutput)
print(l1)
Однако, когда я запускаю приведенный выше код, я получаю пустой кортеж (из оператора return в function2()
и пустой список (при попытке вывести l1
):
([], [], [])
[]