Как найти номер строки в файле python

от admin

Получить номер строки определенной фразы в файле Python

Мне нужно получить номер строки фразы в текстовом файле. Фраза может быть:

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

Я использую Python 2.6 в Windows XP

Это то, что у меня есть:

Это не домашнее задание, это часть проекта, над которым я работаю. Я даже не знаю, как получить номер строки.

7 ответов

РЕДАКТИРОВАТЬ 1,5 года спустя (увидев, что он получил еще один взлет): я оставляю это как есть; но если бы я писал сегодня, то писал бы что-то поближе к решению Ash/suzanshakya:

Python-сообщество

вот тут люди задаются тем же вопросом
https://stackoverflow.com/questions/845058/how-to-get-line-count-cheaply-in-python
я там насчитал с десяток способов берешь пару тройку файлов разного размера, от пары килобайт до сотни МБ и проганяешь все способы измеряя время таймит-ом.

Отредактировано PEHDOM (Ноя. 10, 2017 14:26:18)

#4 Ноя. 11, 2017 07:51:17

Как узнать номер последней строки файла?

Если нужна скорость — юзай многопотоковое программирование — юзай threading. По крайней мере производительность и скорость моей программы(не скажу какой) увеличилась в x2.5 раз при том, что прога работала в 2-ух потоках, а не в 1-ом(мэйновском потоке).

#5 Ноя. 11, 2017 22:46:25

Как узнать номер последней строки файла?

Спасибо большое всем

#6 Ноя. 11, 2017 22:55:20

Как узнать номер последней строки файла?

damilkrose
ну и как вам блин ваш совет поможет автору? КАК ?

_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

#7 Ноя. 12, 2017 17:37:25

Как узнать номер последней строки файла?

Под советом “используй threading” я имел в виду, bjiq, что ты можешь сделать свою прогу работающей в нескольких потоках. Подробнее: https://habrahabr.ru/post/149420/
Надо просто содержимое файла по возможности разделить на 2 части для 2-ух потоков.

А твой вариант совсем не плох.

Читать:
Как найти напряжение зная эдс и сопротивление

Отредактировано damilkrose (Ноя. 12, 2017 17:38:00)

#8 Ноя. 12, 2017 17:45:36

Как узнать номер последней строки файла?

damilkrose
Объясни на пальцах. Вот есть у нас файл, надо узнать количество строк. Вопрос № 1: как не зная размер файла разбить его на две части? Вопрос № 2: что конкретно должен делать поток № 1 с частью файла № 1.

#9 Ноя. 12, 2017 19:17:28

Как узнать номер последней строки файла?

А по частям для каждого потока. Так дело пойдет гораздо быстрее. И размер тут не имеет особого значения если в деле говориться о строках

P. S. Написал что думаю. Если не прав в чем-то — пожалуйста докажи, и я извинюсь.

Как мне узнать номер строки в файле и забрать из нее данные?

У меня есть 2 файла. В одном и в другом построчно написаны данные. Мне нужно взять определенную строку в одном файле и по номеру строки найти данные в другом файле (может это можно сделать и не по номеру строки). Можете объяснить как это лучше сделать в плане кода. При том что в файлах разные данные и каждая строка одного файла связана с каждой строкой другого. Мне нужно взять данные из второго файла, зная в каком ряду нужные мне данные в первом файле.

Как в текстовом файле найти номер строки с заданным текстом в python?

sim3x

Причем вторым параметром в enumerate можно передать номер начала отсчёта — например, начать с 1, а не с нуля (по умолчанию). В переменной index будет номер текущей строки.

  • Facebook
  • Вконтакте
  • Twitter

Отдельного нет, но там итак не сложно. Открыть документ, инициализировать счетчик и считывать построчно, проверяя вхождение текста в считанную строку, пока не найдем. Примерно так

Похожие статьи