#python
Вопрос:
Я хочу прочитать файл .txt, содержащий более 25000 строк, для этого я написал программу на python, но она выдала (вывела)только 490 строк. Может ли кто-нибудь изменить мою программу?
f = open('file2.txt','r') for line in f: data=list(map(float,line.strip().split())) y=[] y.append(data[2]) print(y)
Комментарии:
1. Вы сбрасываете
y
значение для каждой прочитанной строки. Вероятно, это не то, чего ты хочешь.2. мой файл содержит 3 столбца, которые представляют координаты x, y и z соответственно. и 27000 строк. я хочу извлечь второй столбец, содержащий координаты y. вот почему я использовал y в своей программе
3.Да, но после того, как вы прочитаете первую строку, вы назначаете пустой список
y
. После того, как вы прочитаете вторую строку, вы сделаете то же самое: все, о чемy
шла речь, будет выброшено. Поставьтеy = []
перед петлей.4. Также нет смысла анализировать все три значения, если вам нужно только второе. Весь ваш цикл может быть заменен на
ys = [float(line.strip().split()[1]) for line in f]
.
Ответ №1:
Если вам нужен 3-й поплавок на строку в y
списке, вы ищете что-то вроде
y = [] with open("file2.txt") as f: for line in f: data = [float(x) for x in line.strip().split()] y.append(data[2]) print(y)