LINUX.ORG.RU
ФорумTalks

Код-инжекшены в убогом питон

 , ,


1

4

да выбрасывает ексепшен, но выброс ексепшена == борьба со следствиями, а именно с кодинжекшеном.

>>> class Foo():
...     def __init__(self, **kw):
...             print(kw)
... 
>>> d = {'self': 'abc', 'a': 1, 'b': 2}
>>> 
>>> Foo(**d)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: __init__() got multiple values for argument 'self'

Ща адепты мне расскажут что так делать нельзя.

Типа в шаблон jinja нельзя передавать self. Придумайте новое имя. Ага.

Для специалистов: если атаковать не первый параметр (self), а скажем опциональный, то будет весело:

>>> class Foo():
...     def __init__(self, a=None, **kw):
...             print('a=', a, kw)
... 
>>> d = {'self1': 'abc', 'a': 1, 'b': 2}
>>> 
>>> Foo(**d)
a= 1 {'self1': 'abc', 'b': 2}
<__main__.Foo object at 0x7f9a14ec5a58>
>>>
★★

Последнее исправление: rsync (всего исправлений: 1)
Ответ на: комментарий от rsync

Тогда написание твоего ника не поддается формальным правилам...

dem ★★
()
Ответ на: комментарий от rsync

Забавный у тебя XML.

Так про perl скажешь? Докажешь что он гениален?

dem ★★
()
Ответ на: комментарий от Reineke

И шо, написание своего особого способа вместо уже используемого другими помогает?

конечно помогает

rsync ★★
() автор топика
Ответ на: комментарий от dem

докажу что perl убогое поделие

Зачем? Все в курсе, и применяют перл по назначению. Только питонщики суют везде свою прелесть и находят идеологическое обоснование каждому косяку.

bread
()
Ответ на: комментарий от bread

ТС не в курсе. Мне интересно как он выкручиваться будет

dem ★★
()
Ответ на: комментарий от bread

Только питонщики суют везде свою прелесть

Доктор откуда у вас такие картинки. Питонщики ничего никуда не суют. Докажите что вот куда, то пришли питонщики и что то засунули.

dem ★★
()
Ответ на: комментарий от Jopich1

наоборот. так можно оптимизировать SQL по максимуму.

rsync ★★
() автор топика
Ответ на: комментарий от dem

Проще вспомнить куда не пришли пистонщики. Повсюду он раскидывает свои стектрейсы от веба до системщины, и везде как корове седло.

bread
()
Ответ на: комментарий от bread

Проще вспомнить куда не пришли пистонщики.

Второй слился. КУДА ПРИШЛИ питонщики? Вспомни хоть 1 место КУДА они пришли.

dem ★★
()
Ответ на: комментарий от dem

дык гугл!

гугл настолько огрёб, что даже Go стал пилить, небросающий ексепшены.

из огня да в полымя

rsync ★★
() автор топика
Ответ на: комментарий от rsync

Что дык гугл? Можешь говорить внятно, а не как Шариков?

dem ★★
()
Ответ на: комментарий от dem

Вспомни хоть 1 место КУДА они пришли.

Кто-то недавно хвалился как впарил банкирам скрипты на пистоне. Такие то дела.

bread
()
Ответ на: комментарий от dem

Да какой-то типок с лора. Но это ладно, но там целый гугль подсел на это УГ (хотя не факт, что добровольно).

bread
()
Ответ на: комментарий от rsync

По-моему Го пилили как альтернативу сям, только проще, а не как альтернативу пихтону. Не?

It must be familiar, roughly C-like. Programmers working at Google are early in their careers and are most familiar with procedural languages, particularly from the C family. The need to get programmers productive quickly in a new language means that the language cannot be too radical. – Rob Pike

Reineke
()
Ответ на: комментарий от Reineke

По-моему Го пилили как альтернативу сям, только проще, а не как альтернативу пихтону. Не?

Не совсем. Гуглу нужен был высокопроизводительный инструмент (который в принципе никому больше не нужен) с легким порогом входа. Для легкого порога был Python А высокопроизводительный C++ потому они просто взяли сделали ЯП убогий в котором разраб ограничен узкими рамками. Рантайм сам за него планирует как работают горутины и теперь любой студент может написать «быструю» программу. Чтоб написать ее на Python надо думать, ну и Python сложнее Go взять те-же метаклассы. Ну и над производительностью Python работают. Например http://pythonz.net/articles/216/ Язык сложный и над ним работают. В планах оптимизация за счет тайп хинтинга.

dem ★★
()
Ответ на: комментарий от rsync

Go начали пилить из-за плюсов, а не из-за питона. Питон же попал под раздачу из-за того, что интерпретатор всратый и производительность никакая.

WitcherGeralt ★★
()
Ответ на: комментарий от rsync

Тогда глянь flask-triangle и flask-potion
У последнего ещё и фронтенд-либа на Typescript есть.

Shadow ★★★★★
()
Ответ на: комментарий от Shadow

почему html генерят не в dom дерево а шаблонами, как думаешь?

rsync ★★
() автор топика

Только февраль, а уже весенее обострение. Проклятое глобальное потепление.

RazrFalcon ★★★★★
()
Ответ на: комментарий от WitcherGeralt

Так покажи запись. Да и в адекватности Роба Пайка есть сомнения. Взять хотя бы его ненависть к подсветке синтаксиса...

dem ★★
()
Ответ на: комментарий от dem

Он очень часто на конфах выступает. Поди найди в каком выступлении что конкретно он говорил, не буду же я всё пересматривать.

в адекватности Роба Пайка есть сомнения

Это же один из поздних демиургов юникса и автор канонической литературы, если сомневаться в его адекватности, то уже не знаю тогда в чём вообще можно быть хоть сколь-либо уверенным.

WitcherGeralt ★★
()
Ответ на: комментарий от rsync

Ты б английский подучил, и логику немножко. Можно ещё базовый курс философии.

leave ★★★★★
()
Ответ на: комментарий от rsync

тем кто не понимает всю глубину глубин, просьба на волноваться
Ментор Гвиды в масонских кругах. Для простоты назовем его «папашей». Но можно конечно верить, что питон проник во все топовые университеты случайно.

Т.е. язык Perl от сотрудника NSA, Larry Wall'а - лучше?

pacify ★★★★★
()

Я тоже питон не очень люблю, но то, что ты написал - полная херня. Как вообще можно додуматься давать кому-то из интернета напрямую дёргать твой код?

crutch_master ★★★★★
()
Ответ на: комментарий от pacify

Конечно, перл лучше для тех задач, под которые он создан. И никто его не форсил так люто-бешено никогда.

bread
()
Ответ на: комментарий от rsync

Строго наоборот. Они начали со студенческой дипломной на питоне.

question4 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.