
Artem
15.01.2017
15:47:40
cp1251
224
255
рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■

Yokai
15.01.2017
15:51:23
ord - это разве не про ASCII?

Artem
15.01.2017
15:51:41
а-я это не про ascii
224 и 255 это валидные орды в cp1251

Google

Artem
15.01.2017
15:52:09
160 и 239 - в cp866
но дефолтный энкодинг stdout остается cp866, даже когда мы пишем -*- coding: cp1251
видимо, потому что cmd.exe срать ебал на наши предпочтения
не используйте, дети, на втором питоне кириллицу не в юникодных строках

Yokai
15.01.2017
15:53:39
Language: py3
Source: print(''.join(chr(j) for j in range(ord('а'), ord('я') + 1)))
Result: абвгдежзийклмнопрстуфхцчшщъыьэюя
Stats: Absolute running time: 0.14 sec, cpu time: 0.03 sec, memory peak: 6 Mb, absolute service time: 0,14 sec

Artem
15.01.2017
15:53:45
(но это и так все знают)
>> py3
а это каким боком здесь?) это третий питон, юникод и не винда

Yokai
15.01.2017
15:56:43
Пожалуй, я тоже озадачен, интересно, как это решается
Language: py2
Source: # -*- coding: cp1251
print(''.join(chr(j) for j in range(ord('а'), ord('я') + 1)))
Errors: Traceback (most recent call last):
File "source_file.py", line 2, in <module>
print(''.join(chr(j) for j in range(ord('а'), ord('я') + 1)))
TypeError: ord() expected a character, but string of length 2 found
Stats: Absolute running time: 0.14 sec, cpu time: 0.01 sec, memory peak: 4 Mb, absolute service time: 0,14 sec

Artem
15.01.2017
15:57:35
а тут очевидно сорец сохраняется не в cp1251

Yokai
15.01.2017
15:58:08
то есть и сохранять его надо в этой кодировке... Сколько сложностей.

Artem
15.01.2017
15:58:09
вряд ли в этом боте удастся воспроизвести, в таком случае

Yokai
15.01.2017
15:58:22
у меня тоже linux

Google

Artem
15.01.2017
15:58:45
ну да, иначе а и я натурально не будут влезать в чар

b0g3r
15.01.2017
16:02:50
stdout все же зависит именно от stdout, а не от кодировки файла

Artem
15.01.2017
16:03:24
да нет, все так
я бы предположил, что ему было бы неплохо совпадать с sys.getdefaultencoding()

Rookie
15.01.2017
16:05:23
Стыдаут - это тоже файл. Ваш кэп.

Sheridan
15.01.2017
16:09:31
В plan9 ВСЁ - файл

Nikolay
15.01.2017
16:20:13
на собеседованиях очень много людей, которые свято уверены, что stdin и stdout оперируют строками и делят все по переносу строки
и что пайпы работают так же
очень люблю у таких людей спрашивать, как работает wc -l

arisu
15.01.2017
16:22:44
а практическая сторона этого вопроса какая?

Nikolay
15.01.2017
16:24:33

Nikolay
15.01.2017
16:25:10
Вам шашечки или ехать?

Nikolay
15.01.2017
16:25:11
если человек при вопросе “как просуммировать числа в двух колонках из csv и вывести результат” предлагает pandas - то это плохой знак
потому что надо awk и надо csvkit

Nikolay
15.01.2017
16:25:36
ну да

Nikolay
15.01.2017
16:25:43
а иногда gnu parallel

Nikolay
15.01.2017
16:25:49
import csv

Nikolay
15.01.2017
16:26:08
не, import csv не нужен даже

Nikolay
15.01.2017
16:26:12
запуск libreoffice calc с нужными параметрами

Google

Nikolay
15.01.2017
16:26:38
короче, 90% задач решаются в сто раз быстрее на локальной машине командными утилитами :)

arisu
15.01.2017
16:27:14

Nikolay
15.01.2017
16:27:27
не, субпроцесс - тоже говнище
даже joblib - говнище

arisu
15.01.2017
16:27:44
а зачем тогда делать через awk то, что можно сделать через csv?

Nikolay
15.01.2017
16:28:48
зачем питон там, где без него быстрее и проще?
awk охренительно быстрый

Dmitriy
15.01.2017
16:29:05
awk умеет в csv?

Nikolay
15.01.2017
16:29:33
awk - не очень, но есть csvkit, который как раз использует import csv

Roman
15.01.2017
16:29:45

Dmitriy
15.01.2017
16:29:49
Ну вот, без питона никуда ?

Nikolay
15.01.2017
16:29:59
просто в большинстве случаев, если csv не сильно битый, то и awk справится на ура

arisu
15.01.2017
16:30:01
зачем в терминале какие-то расчеты вообще

Nikolay
15.01.2017
16:30:18

Dmitriy
15.01.2017
16:30:20
Главное лисапед не изобретать

Nikolay
15.01.2017
16:30:44

Nikolay
15.01.2017
16:30:46
Пока вспомню/прочитаю все ключи и параметры к awk - быстрее напишу на python

Nikolay
15.01.2017
16:31:08

arisu
15.01.2017
16:31:25
шутишь?
не шучу. получается какой-то оторванный от бизнес-логики расчет на awk
для чего он?

Google

Nikolay
15.01.2017
16:31:53
и умеет в многоядерность, не то что питон

Nikolay
15.01.2017
16:32:12
NR, NF + свой язык gawk
и прочие переменные

Nikolay
15.01.2017
16:32:24
я питон всячески люблю, но есть места, где он нафиг не нужен

Nikolay
15.01.2017
16:32:38
получаем еще один DSL

Nikolay
15.01.2017
16:32:43
там остальное на практике никогда толком не нужно

Artem
15.01.2017
16:32:45

Admin
ERROR: S client not available

arisu
15.01.2017
16:32:47
так а дальше-то что?
ну посчитал я что-то авком
дальше куда это значение?

Artem
15.01.2017
16:33:03
какая разница, awk, питон, если это одноразовая задача

arisu
15.01.2017
16:33:04
смотреть на него и радоваться?

Nikolay
15.01.2017
16:33:09

Nikolay
15.01.2017
16:33:11

Artem
15.01.2017
16:33:14
тебе нужно написать на том, на чем тебе привычнее

Nikolay
15.01.2017
16:33:19
что тебе не нравится?

Google

Nikolay
15.01.2017
16:33:31
надо оптимально использовать ресурсы машины, которая у тебя есть

Artem
15.01.2017
16:33:34
если потом что-то еще нужно считать и анализировать - то правильно сразу сказать pandas
нет

Nikolay
15.01.2017
16:33:39
на питоне ты не всегда сможешь это сделать

Artem
15.01.2017
16:33:40
не надо
зачем?

Nikolay
15.01.2017
16:34:06
затем, что одна и та же задача на питоне и на CLI может решать с разницей в скорости в часы

Artem
15.01.2017
16:34:09
если у меня в задаче сказано, что объемы данных огромные - ок, можно подумать на сколько-то секунд-минут-часов дольше
ты сказал "просуммировать"

Nikolay
15.01.2017
16:34:20
а потом awk

Nikolay
15.01.2017
16:34:44
?

Nikolay
15.01.2017
16:35:07
и вообще, почитай ссылку :) я ее не просто так вбросил

Artem
15.01.2017
16:35:14

Artem
15.01.2017
16:35:16
awk правда такой быстрый? я бы сразу предположил, что мне нужен си. Ок, да, это недостаток опыта

Nikolay
15.01.2017
16:35:39
она бита
нормально она открывается, даже превью мне показало
http://developers-club.com/posts/267697/

Artem
15.01.2017
16:35:54
Ну мб у меня какие проблемы D:

Nikolay
15.01.2017
16:36:08
видимо, роскомнадзор

Nikolay
15.01.2017
16:36:11
БИТАЯ ССЫЛКА