@TWT

Тег python в блоге TWT

TWT
test test_venv failed -- Traceback (most recent call last):
  File "/usr/lib64/python3.6/test/test_venv.py", line 145, in test_prefixes
    self.assertEqual(out.strip(), expected.encode())
AssertionError: b'/usr' != b'/usr/lib/python-exec/python3.6/../../..'

На самом-то деле /usr/lib/python-exec/python3.6/../../.. это то же самое что /usr :)

TWT
TWT

Так что я с тех самых пор пользуюсь именно Python’ом почти для всех научных работ

Я по этой фразе угадал дедфуда в каментах до того, как увидел каменты.

TWT

Благодаря sigsergv и #okwjp я узнал, что даже питон может напечатать вам CPUID signature:
1) git clone https://github.com/flababah/cpuid.py.git
2) cd cpuid.py
3) sed -i '30i\ \ \ \ print(f"CPUID : {cpu(1)[0]:X}")' example.py
4) python example.py

P.S. Хворк, а ты знал что sed умеет вставлять строки прямо внутрь файла? В этом есть что-то возбуждающее...

TWT

Я сегодня недоволен барсуком.
Я-то думал он в самом деле хочет на scipy что-то написать.
Оказалось, он просто хочет поржать над "SyntaxError: lambda cannot contain assignment"
Запилил ему правильный ответ в https://wandbox.org/permlink/kl4FHNuHTPQreETn

Если Python настолько сильно его смешит, пусть портирует scipy на С++17 -- посмеёмся вместе.

TWT

Трассирую emerge в pudb потому что прикольно

TWT
!!! The following installed packages are masked:
- app-admin/python-updater-0.14::gentoo (masked by: package.mask)
/usr/portage/profiles/package.mask:
# Mike Gilbert <floppym@gentoo.org> (13 Nov 2017)
# python-updater is obsolete. Utilize PYTHON_TARGETS and
# emerge --changed-use to rebuild packages instead.
# Removal in 30 days.

ну охуеть теперь

TWT

Жаль string templates в котлине не такие, как f-строки в питоне.

TWT

Хочу спросить у hirthwork и qnikst правда ли @thesz aka http://thesz.livejournal.com aka Штангист теперь работает на Питоне в Яндексе? Удавалось ли встретиться с ним лично?

TWT
from collections import defaultdict; m = defaultdict(int)
from os import walk; from os.path import basename, splitext
for _, _, files in walk('/home/kurkuma/porn'):
    for fn in files:
        o = splitext(basename(fn))[0]
        try:
            x, k = o[-12], o[-11:]
            if '-' is x: m[k] += 1
        except:
            pass
for k in m:
    if m[k] > 1: print(f"{k} - {m[k]}")

Эта программа находит все дубли, скачанные youtube-dl заново с другим расширением.
Доставайте свои липы, хаскели и идрисы, давайте меряться у кого длиннее
inb4: у тебя короче всех

TWT

Не знаю, почему, но youtube-dl при скачивании целых каналов иногда качает дубли.
Например, позавчера он скачал с канала "Прикольние Видосики" файл "Видосик 134.mkv", а сейчас он, пробегая по списку и сообщая "... has already been downloaded and merged" вдруг опять стал качать это видео, но сохранил под именем "Видосик 134.webm"
Наверное, youtube сказал youtube-dl, то версия webm полущ. Оно бы и ладно, но теперь у меня два видосика про одно и то же, а место на HDD надо экономить, потому что порно не влезает.

Как бы научить youtube-dl группировать такие файлы по id.
А с другой стороны проще самому написать скрипт группировки, ведь id у ютубчика имеют len == 11

TWT

TWT

Ну вот только привыкнешь писать на Python 3.6.2, зайдёшь на www.python.org а там уже Python 3.6.3
Читаешь Release Notes а там поправили два с половиной бага, две трети из которых касаются только винды.
Тьфу на них.

TWT

TWT

TWT

In Python, a zero (null) character this does not terminate a string the way a “null byte” typically does in C.
Instead, Python keeps both the string’s length and text in memory.
In fact, no character terminates a string in Python.

TWT

Всё время забываю, что в новом питоне можно умножать вот так: 8_076_923_077 * 0.002_6

TWT

Python: bringing the fun back to programming!

TWT

Продолжу мысль из #ozmww -- теперь можно набросать прототипчик на Питоне, подсунуть его Скале, она поругается на типы, расставить типы, добиться чтобы компилировалось -- и обратно в Питон. Останется только написать from typing import ...... чтобы на типы не ругалось, и всё. У вас питонский код уровня надёжности Скалы.

TWT

Сила питона:
собирал opencv-3.2.0
а он пользуется (зачем-то) javatoolkit и в частности /usr/lib64/javatoolkit/bin/build-xml-rewrite
и как давай говорить "мне нужны не байты а строка"
ну я пошёл в /usr/lib64/python3.6/xml/etree/ElementTree.py
нашёл там def _get_writer(file_or_filename, encoding)
и всю ветку про binary writer просто закомментировал.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.