Как читать строку и отдельно хранить каждый элемент в разных массивах в Python

Я новичок в питоне. Меня смущает чтение и сохранение каждого элемента в разных массивах в строке.

Например, у меня есть файл с именем "name_scores.list"

1 Иоанна 95

2 Марка 85

3 Джессика 75

4 жениться 98 ...

И я хочу прочитать этот файл и сохранить каждую строку в виде массивов [чисел, имен, оценок]. Как мне написать скрипт на Python? Заранее благодарю за любую помощь.

open файл, затем перебрать его; для каждой строки пробел strip с конца (концов), затем split на пробеле - разделение должно возвращать list; append из этого списка в другой list, который вы используете для хранения всех строк ..
wwii 27.10.2018 00:44

Это слишком простая работа, вам нужно просто поискать в документе Python и найти ответ.

Lerner Zhang 27.10.2018 02:16
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
38
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

with open('names_scores.list') as f:
    lines = f.readlines() # returns a list of lines, ["1 John 95\n", "2 Mark 88\n", "3 Jessica 75\n", "4 Marry98\n"]
    lines = [line.rstrip('\n').split(' ') for line in lines] # remove the trailing \n and split the string up using the spaces
    print lines #[[1, John, 95], [2, Mark, 85], [3, Jessica, 75] [4, Marry, 98]]
Ответ принят как подходящий
with open("name_scores.list") as f:
    for line in f:
        parts = line.rstrip().split()
        print(parts)                     # A 3-element list

или

with open("name_scores.list") as f:
    lines = [line.rstrip().split() for line in f]

print(lines)    # A list of 3-element lists

Если у вас есть дополнительные пробелы, которые вы не хотите использовать в качестве разделителей (например, у вас есть и имя, и фамилия), вам просто нужно настроить, как вы использовали список parts (или эквивалентный).

Другие вопросы по теме