Rodegast
Что же ты такое не сообразительный…
>>> [
... 'User: %(user)s, Address: %(address)s, Phone: %(phone)s'%{"user": str(x), "address": str(y), "phone": str(z)}
... for x, y, z in [('John', 'Street 123', 123),('Bob', 'Street 789', '555-55-55')]
... ]
['User: John, Address: Street 123, Phone: 123', 'User: Bob, Address: Street 789, Phone: 555-55-55']
Это ты хочешь сказать, что это лучше короткого str.format()?
То есть фактически ты пишешь обёртку, которая приводит все типы вместо процента, потому что процент их приводить не умеет. Ну, молодец чо. Так ты ещё и свёл всё к %s в форматной строке, откинув все чудесные возможности процента по заданию определённых типов. А мне вот одного формата хватает один раз написанного и всё, и он всё приводит сам. И
если у объекта есть его нативное строковое представление, то он так и выведется сразу. Мне не нужно для этого ничего дописывать. Оно там внутри само разпознается. В этом сила полиморфизма.
Rodegast
Кто может дать гарантию что не придут данные для которых эта хрень не определена каким то неожиданным образом.
Ты наверное в больших проектах не участвовал, по этому подобных вещей не понимаешь.
Я думаю, ты не знаешь, что такое полиморфизм, как им пользоваться, для чего он нужен, что он даёт и почему его нужно использовать. Вот в этом вся твоя проблема. Ты думал, что он поймётся как-то сам, из космоса, а для этого, на самом деле, надо книжки читать обязательно. Поэтому твоё окружение, такое же, оно точно так же не знает, что такое полиморфизм, потому что вы учитесь друг у друга, а книжек никто из вас не читал.
В итоге вы все нихера не знаете. А когда вы все нихера не знаете, у вас ничего не получается родить. В итоге ваш “большой проект”, он большой только по количеству строк. Но это количество строк ничего не делает по своей сути. А ты думал, что это всё никому не нужно? Так это не нужно тем, кто
нихера не делает,
не производит ничего.