
?? Eugene
10.09.2018
11:12:39

Alexey
10.09.2018
11:12:54
Так в С есть же вроде try cath, обергуть код и принтовать LINE, FILE (директивы компилятора)

Дмитрий
10.09.2018
11:13:14
Плохо что у ТГ так плохо организованны чаты. RO нету, А то сделать по умолчанию ro и ссылку на правила + минитест на знания python. Прошел, получил rw

Андрей
10.09.2018
11:13:38

Google

Андрей
10.09.2018
11:13:45
Но зачем?

Костя
10.09.2018
11:13:49

Дмитрий
10.09.2018
11:14:08
А разве можно участнику давать ro режим?

Костя
10.09.2018
11:14:18
естественно
разве не?

Vladislav
10.09.2018
11:14:36
можно

Дмитрий
10.09.2018
11:14:50
Пару лет назад нужно было, такой функции не было. Сейчас не знаю
Так давайте организуем, и спама поменьше будет в виде "как запустить файл *py"

Vladislav
10.09.2018
11:16:01
можно уже существующих заюзать

Kirill
10.09.2018
11:16:11

Iliya
10.09.2018
12:11:13
День добрый, нужен совет, какой алгоритм использовать
Задача простейшая, но огромная
Что надо сделать: Есть два файла со строками и нужно пройтись по ним и создать третий файл в который записать только те строки которые есть только в одном файле, но нет во втором
Вопрос не в бегинеры так как в ФАЙЛЫХ по 4-6млн строк
Есть у кого-нибудь идеи?

Aragaer
10.09.2018
12:12:18
все равно лучше попарного сравнения ничего не придумать

Василий
10.09.2018
12:12:20

Google

Aragaer
10.09.2018
12:12:51
я бы разбил оба файла на большое количество вменяемых по размеру частей и распараллелил бы обработку
распараллелить по кускам первого файла

??
10.09.2018
12:13:08
как с помощью flask получить данные со всех форм, но в список записать те, в которых есть данные

Aragaer
10.09.2018
12:13:10
по второму только последовательно

Василий
10.09.2018
12:13:42

Iliya
10.09.2018
12:13:42

Василий
10.09.2018
12:14:27

Iliya
10.09.2018
12:14:32

Евгений
10.09.2018
12:14:34

Aragaer
10.09.2018
12:14:59
не
надо каждый с каждым все равно

Василий
10.09.2018
12:15:11

Aragaer
10.09.2018
12:15:42
ну если нет никакой дополнительной информации

Iliya
10.09.2018
12:15:57

Василий
10.09.2018
12:16:07
Если так то просто прочитай файлы в setы и примени к ним логическое или

Aragaer
10.09.2018
12:16:30
если можно просто всосать, то банально grep -v -F -f file2 file1

Iliya
10.09.2018
12:18:15
Вот пример данных из фалов
FILE_1
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
AAAAAA=111111111111;
FILE_2
111111111111
111111111111
111111111111
111111111111
111111111111
111111111111
111111111111
111111111111
111111111111
111111111111

??
10.09.2018
12:18:31
сплитани
в первом

Google

Iliya
10.09.2018
12:18:36
Я думаю первой итерацией привести файл 1 в виду файла 2
Удалить таб и буквы с равно и точку с запятой

??
10.09.2018
12:18:39
и реплесни
а затем проверяй

Aragaer
10.09.2018
12:19:09
ну как минимум надо удалить все дубликаты

Василий
10.09.2018
12:19:30
а лучше frozenset т.к. он меньше оперативы жрет

Евгений
10.09.2018
12:20:07

Aragaer
10.09.2018
12:20:46
uniq удалит дубликаты
птон не нужен короче для этой задачи

??
10.09.2018
12:21:36
как с помощью flask получить данные со всех форм, но в список записать те, в которых есть данные

Iliya
10.09.2018
12:21:41

??
10.09.2018
12:22:23
2 массива запилить и по ним в цикле пройтись

Aragaer
10.09.2018
12:22:27
grep -v -F -f file2 file1

Евгений
10.09.2018
12:22:32
ну из второго файла делаете set, по первому идете, и ремувите строки, что есть в сете.

Aragaer
10.09.2018
12:22:35
вот эта команда тебе все сделает
ну .. почти. можно добавить ключик -w на всякий случай

Iliya
10.09.2018
12:23:26

??
10.09.2018
12:23:50
в кмд
вродб

Aragaer
10.09.2018
12:24:23
в stdout вывалит. Но ты можешь перенаправить куда хочешь

Google

Iliya
10.09.2018
12:25:04

Евгений
10.09.2018
12:25:10

Iliya
10.09.2018
12:25:29
> file3
да понял, что stdout перенаправить

Aragaer
10.09.2018
12:25:32
если каждая строчка второго файла является корректным шаблоном для выкидывания строки из первого, то больше ничего не надо
если например в первом файле есть
aaa = 1150
bbb = 2150
а во втором есть строчка 150, то надо сделать -w, иначе удалит обе предыдущие

Admin
ERROR: S client not available

Iliya
10.09.2018
12:32:03
FILE_1
AAAAAA=111111111111;
AAAAAA=111111111112;
AAAAAA=111111111113;
FILE_2
111111111111
111111111114
111111111114
Т.е. мне надо из file1 удалить
AAAAAA=111111111111;
так как в file2 есть такая строка
И я это смогу сделать так
grep -v -F -f -w file2 file1 > file3
Верно? @aragaer

Andrey
10.09.2018
12:40:31
Доброго времени суток
Подскажите пожалуйста уже всю голову себе сломал.
Есть файл текстовый с логами (8гб примерно).
Нужно его отпарсить и выбрать определенные строки.
И я написал такой код:
f_contents - сюда прочитали сам файл.
substr - строка - ключевик которую ищем в файле
lines = []
for line in f_contents.strip().split('\n'):
If substr in line
lines.append(line)
Так вот при запуске на начале цикла вылетает с ошибкой памяти (как я понял просто в цикле весь файл читается в список).
Как переписать код чтобы исправить эту хрень?
Спасибо

Aragaer
10.09.2018
12:41:29

Костя
10.09.2018
12:43:39
а,там тоже лист

Iliya
10.09.2018
12:44:28

Andrey
10.09.2018
12:44:58
А если вот такой цикл:
for line in f_contents:
То line это просто 1 буква как показывает вывод -> никакой подстроки он не находит

Костя
10.09.2018
12:48:18

Aragaer
10.09.2018
12:50:14
$ cat file1
x=10
y=20
z=30
$ cat file2
20
30
$ grep -v -w -F -f file2 file1
x=10
ну то есть "у меня все работает"

Alexey
10.09.2018
12:54:33
Для сравнения файлов в linux есть утилита diff...

Aragaer
10.09.2018
12:55:34
тут не сравнение

Iliya
10.09.2018
12:56:15
тут не сравнение
я думаю может дело в табе, который у меня в начале строки в file1
Cейчас попробую твой пример повторить создам такие же, сек

Google

Aragaer
10.09.2018
12:56:18
тут "удалить из одного файла все строки, которые матчат шаблоны из второго"
нет, не думаю
ща сделаю с табом
$ grep -wvFf file2 file1
x=10

Iliya
10.09.2018
12:57:31
$ grep -wvFf file2 file1
x=10
да с такими значениями работает
что за фигня, там у меня цифр фофига, в глазах рябит =) Сейчас внимательно буду сомтреть

Aragaer
10.09.2018
12:57:54
давай небольшой пример, на котором не работает
... хотя у меня есть гипотеза

Iliya
10.09.2018
12:58:16

Aragaer
10.09.2018
12:58:35
сделай dos2unix на второй файл
Да, если во втором файле виндовые переносы строк, то работать перестает

Iliya
10.09.2018
13:00:23
давай небольшой пример, на котором не работает
Вот такой пример
FILE_1
AAAAAA=111111111112;
AAAAAA=111111111111;
AAAAAA=111111111113;
AAAAAA=111111111114;
AAAAAA=111111111115;
AAAAAA=111111111116;
AAAAAA=111111111117;
AAAAAA=111111111118;
AAAAAA=111111111119;
AAAAAA=111111111110;
FILE_2
111111111111
111111111112
111111111113
111111111114
111111111115
111111111116
111111111117
111111111118
111111111119
111111111110

Aragaer
10.09.2018
13:00:27
$ sed -i 's/$/\r/' file2
$ grep -wvFf file2 file1
x=10
y=20
z=30
$ sed -i 's/\r//' file2
$ grep -wvFf file2 file1
x=10

Iliya
10.09.2018
13:02:01
т.е. с начала мне по file2 sed -i 's/\r//' file2

Aragaer
10.09.2018
13:02:21
ага
удалит оттуда виндовые переносы