Куинче на Python

Наскоро си ходих по улицата и си спомних за едно предизвикателство от детството ми – да напиша програма, която принтира кода си. Не знам дали на вас ви се случва да ви хрумват такива неща, докато си ходите по улиците. Или да си спомняте такива предизвикателства от детството си. Аз обаче съм от този тип хора. Та, ето какво съчиних…

print (lambda _:_%`_`)(‘print (lambda _:_%%`_`)(%s)’)

Секси, нали? Ако не го бях писал аз щях доста да беля очи. Въобще, наблъскал съм всички практики за грозен Python код, които ми хрумнаха. Ако се чудите какво става зад кулисите, ето го една стъпка по-рано:

code = ‘code = %s\nprint code %% repr(code)’
print code % repr(code)

Така май повече се чете и по-добре се виждат магиите.

Ура. Вече съм една идея по-навътре в self-rep историите.

Любопитни факти

Името на цялата закачка идва от един логик и философ, който има много интересен парадокс. Формулиран е малко като първия ми код, но като човек се замисли над него открива познат мотив.

One thought on “Куинче на Python

  1. „““Дяволът не е толкова черен, колкото разправят бабите“ казал Дяволът“ – разправяла бабата“.

Вашият коментар

Вашият имейл адрес няма да бъде публикуван.