Тут не исправить уже ничего, Господь, жги! Войти !bnw Сегодня Клубы
УНЯНЯ. У нас есть немножечко инфы об этом пользователе. Мы знаем, что он понаписал, порекомендовал и даже и то и другое сразу. А ещё у нас есть RSS.
Теги: Клубы:

X86I0R

https://ideone.com/K4ykpG

Наверняка можно сократить раза в полтора, но я тупой.

#X38RAT (1) / @4077 / 571 день назад

https://i.imgur.com/FBPqS8B.png

Сегодня я принёс вам упражнение для разминки. Попробуем сымитировать что-то подобное реактовским компонентам на питоне. Без использования транспилера. Да, синтаксис будет не html/xml-ный, зато без транспилера — чистый питон. И чтобы всё динамически — ни о каких тегах и атрибутах рендерер не знает, можно использовать любые (то, что class_ отрендерился в class — просто strip´аем андерскоры, если есть, костыль, чтобы использовать зарезервированные слова).

Контекст реализовывать не нужно (я про подстановку переменных из инстанса компонента в шаблон при рендере, в моём примере компонент вообще инстанцировать не надо), там ничего интересного.

Усложнённый вариант — сделать из el1(attr1='value1')['text1', el2(attr2='value2'), 'text2'] такое: el1[attr1:'value1', 'text1', el2[attr2:'value2'], 'text2']. Обращаю внимание, имена атрибутов записаны БЕЗ кавычек.

Очень хотелось бы увидеть решение от маньки, например. Он ведь такой наскилованный чувак, не так ли?

Сорь за код картинкой, лень аплодить + так наглядней ввод и вывод.

#U5GE66 (39+1) / @4077 / 971 день назад

Оперативный ответ на #4EM8F6/KK5

Дунно, не видел в доках, но

echo -e 'class M(object):\n  def __getitem__(self, key):\n    key_type = type(key)\n    if not isinstance(key, tuple): key = (key,)\n    print("M()[{}] => {}   sum: {}".format(", ".join(map(str, key)) if isinstance(key, tuple) else key, key_type, sum(key)))\n\nM()[1]\nM()[1, 2, 3]' | python
M()[1] => <type 'int'>   sum: 1
M()[1, 2, 3] => <type 'tuple'>   sum: 6
#6DL1NT (7) / @4077 / 1174 дня назад

TIL object[*keys] → object.__getitem__(keys)

#4EM8F6 (4) / @4077 / 1224 дня назад

eval() escape: https://ideone.com/qOQYtO # данный пост опубликован этим eval‘ом

#YY7B9P (3) / @4077 / 1257 дней назад

Переписал изотерификатор в однострочник:

cat file.py | python3 -c "print('exec(' + '+'.join('chr(+(not(not())))' if not c else ('chr(+(not()))' if c == 1 else 'chr(' + '+'.join('(not())' for _ in range(c)) + ')') for c in __import__('sys').stdin.read().encode('raw_unicode_escape')) + ')')" | tee output.py
#X0KSKV (4) / @4077 / 1269 дней назад

Сегодня я вам принёс изотерификатор питона: https://ideone.com/XHle4T

#NFOMDK (4+1) / @4077 / 1271 день назад

http://dump.bitcheese.net/files/udezygu/bnwoyeurism.py

Десктопные нотификашки для бнв (виа вебсокеты).
Юзаж: bnwoyeurism.py [-c|-p|-a] [@|user1 user2 …]

Первый аргумент — показывать комменты/посты/всё соответственно; по умолчанию — всё.
Второй+ — отбор по пользователям (ники, разделённые пробелами) или все (если указать '@' или ничего).

Список можно положить в ~/.bnwoyeurism/users (по одному в строку). Файлик имеет меньший приоритет, чем аргументы.

Нужен Python 3, websocket-client и notify2 (есть в PyPI). Бажное инфа соточка, не тестил. Сори за петухон.

#XLDWVO (12+6) / @4077 / 1606 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.