Я новичок в питоне. Меня смущает чтение и сохранение каждого элемента в разных массивах в строке.
Например, у меня есть файл с именем "name_scores.list"
1 Иоанна 95
2 Марка 85
3 Джессика 75
4 жениться 98 ...
И я хочу прочитать этот файл и сохранить каждую строку в виде массивов [чисел, имен, оценок]. Как мне написать скрипт на Python? Заранее благодарю за любую помощь.
Это слишком простая работа, вам нужно просто поискать в документе Python и найти ответ.
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
(или эквивалентный).
open
файл, затем перебрать его; для каждой строки пробелstrip
с конца (концов), затемsplit
на пробеле - разделение должно возвращатьlist
;append
из этого списка в другойlist
, который вы используете для хранения всех строк ..