Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 26, 2012 02:19:03

juche-songun
Зарегистрирован: 2012-10-26
Сообщения: 42
Репутация: +  -2  -
Профиль   Отправить e-mail  

Количество строк в файле

Как определить количество строк в файле или то что он дошел до конца, с учетом того что проверять надо в главном потоке а читает в потоках.

Офлайн

#2 Окт. 26, 2012 05:12:15

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Количество строк в файле

juche-songun
количество строк в файле, например

with open('file.txt', 'r') as f:
    i=0
    for i in f:
        i+=1
Если при чтении файла вы уперлись в его конец, то будет сгенерировано исключение EOFError
По поводу потоков - мало информации, непонятно какие у вас там проблемы.



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

Отредактировано JOHN_16 (Окт. 26, 2012 07:37:45)

Офлайн

#3 Окт. 26, 2012 06:01:36

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10010
Репутация: +  857  -
Профиль   Отправить e-mail  

Количество строк в файле

можно изначально замерить через fin.seek() + fin.tell(), а потом сравнивать текущий fin.tell() с сохранённым



Офлайн

#4 Окт. 26, 2012 10:24:13

adray
Зарегистрирован: 2012-09-15
Сообщения: 123
Репутация: +  18  -
Профиль   Отправить e-mail  

Количество строк в файле

Насколько мне известно, файл, открытый на чтение - это поток данных и распараллеливать его чтение бессмысленно. Единственный вариант - чтение одного файла в в одном дочернем потоке с последующим уведомлением главного потока о завершении чтения. Для multithreading и multiprocessing решения отличаются

Офлайн

#5 Окт. 27, 2012 02:44:36

juche-songun
Зарегистрирован: 2012-10-26
Сообщения: 42
Репутация: +  -2  -
Профиль   Отправить e-mail  

Количество строк в файле

ну количество строк проще узнать через len и readlines, но решил я как сказали адрай, ибо выходит адов психодел.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version