Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 17, 2010 12:08:31

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Прошу совета)))
Есть ли простой способ подсчитать кол-во строк в файле?
Заранее благодарен!



Офлайн

#2 Фев. 17, 2010 12:17:24

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Просто мне кажется, я сижу и изобретаю велосипед!



Офлайн

#3 Фев. 17, 2010 12:20:53

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Файлы

len(list(open(<filename>)))



Офлайн

#4 Фев. 17, 2010 12:29:25

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Опа)))…Спасибо…реально изобретал!!!!



Офлайн

#5 Фев. 17, 2010 12:30:09

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Файлы

len(list(open(<filename>)))
Тогда весь файл будет зачитан в память.
Так можно избавится от этого
sum(1 for line in open(<filename>))

Офлайн

#6 Фев. 17, 2010 13:49:24

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Еще один маленький вопрос…просто столкнулся…как удалить все пустые строки из файла? Может как-то можно напрямую…без перезаписывания всего файла?



Офлайн

#7 Фев. 17, 2010 14:04:04

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Файлы

tvaleev
Еще один маленький вопрос…просто столкнулся…как удалить все пустые строки из файла? Может как-то можно напрямую…без перезаписывания всего файла?
можно точечно переписывать символы \n и \r на пробел например, но это извращение для больших мега файлов.
проще переписать файл целиком.

Офлайн

#8 Фев. 17, 2010 14:06:16

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Спасибо…в принципе я так и делаю!



Офлайн

#9 Фев. 17, 2010 14:50:21

tvaleev
От:
Зарегистрирован: 2010-02-16
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

Файлы

Что-то не могу записать я обновленный список в файл…

file_list = list(file)
#
#Произвожу удаление пустых строк
#
file.writelines(file_list)
Получаю такую ошибку…
Traceback (most recent call last):
File “./sdom.py”, line 90, in <module>
trim_spaces_file()
File “./sdom.py”, line 75, in trim_spaces_file
file.writelines(file_list)
IOError: Bad file descriptor

Подскажите, пожалуйста, в чем ошибка!!!!



Офлайн

#10 Фев. 17, 2010 15:40:07

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Файлы

Скрипт полностью покажите.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version