{"id":323100,"date":"2021-05-14T09:00:49","date_gmt":"2021-05-14T09:00:49","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=323100"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=323100","title":{"rendered":"\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043f\u043b\u044e\u0441\u043e\u0432"},"content":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/29b\/4c5\/6cd\/29b4c56cd6fb4a91234ffef31d759d61.jpg\" width=\"1292\" height=\"790\"><figcaption><\/figcaption><\/figure>\n<p>\u041c\u043e\u0439 \u0434\u0440\u0443\u0433 \u0410\u043b\u0435\u043a\u0441\u0435\u0439 \u0438\u0449\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f. \u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442\u0441\u044f, \u043a\u0430\u043a-\u0431\u044b \u044f \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>\u041e\u0442\u0432\u0435\u0447\u0430\u044f \u043d\u0430 \u043e\u0434\u0438\u043d \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u044f \u0441\u043b\u0435\u0433\u043a\u0430 \u0443\u0432\u043b\u0451\u043a\u0441\u044f, \u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430 \u043d\u0430\u0431\u0440\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u0446\u0435\u043b\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0438 \u043d\u0435\u0441\u0435\u0440\u044c\u0451\u0437\u043d\u0443\u044e &#8212; \u043f\u044f\u0442\u043d\u0438\u0447\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430. <\/p>\n<p>\u0425\u043e\u0442\u0438\u0442\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u043b\u0435\u0447\u044c\u0441\u044f? \u0412\u043e\u043f\u0440\u043e\u0441 \u043b\u0451\u0433\u043a\u0438\u0439. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u043d\u0435\u0433\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u0418\u0442\u0430\u043a:  <\/p>\n<p>&#171;\u0421\u043b\u043e\u0436\u0438\u0442\u044c \u0434\u0432\u0430 \u0446\u0435\u043b\u044b\u0445 \u0447\u0438\u0441\u043b\u0430 (\u043e\u0442 1 \u0434\u043e 99) \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 &#8216;\u043f\u043b\u044e\u0441&#8217;. \u0414\u0430\u0439\u0442\u0435 \u043f\u044f\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432&#187;<\/p>\n<hr>\n<p>\u041d\u0443 \u043a\u0430\u043a? \u041f\u0440\u0438\u0434\u0443\u043c\u0430\u043b\u0438 \u043f\u044f\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u043e\u0432? \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0440\u0430\u0432\u043d\u0438\u043c. \u0415\u0441\u043b\u0438 \u0431\u0443\u0434\u0435\u0442 \u0447\u0442\u043e-\u0442\u043e \u0442\u0430\u043a\u043e\u0435, \u0434\u043e \u0447\u0435\u0433\u043e \u044f \u043d\u0435 \u0434\u043e\u0434\u0443\u043c\u0430\u043b\u0441\u044f &#8212; \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438. <\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 &#8212; \u0445\u0443\u0434\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0430\u044f &#171;\u0441\u0442\u0435\u043d\u043e\u0433\u0440\u0430\u043c\u043c\u0430&#187; \u043c\u043e\u0435\u0433\u043e \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u043c.<\/p>\n<hr>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 &#8212; &#171;\u043c\u0438\u043d\u0443\u0441 \u043d\u0430 \u043c\u0438\u043d\u0443\u0441 \u0434\u0430\u0451\u0442 \u043f\u043b\u044e\u0441&#187;:<\/p>\n<pre><code class=\"python\">plus1 = lambda a,b: a - (-b)  &gt;&gt;&gt; plus1(22,6) 28<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0438\u0448\u044c \u043e\u0448\u0438\u0431\u043a\u0443? \u041e\u043d\u0430 \u0437\u0434\u0435\u0441\u044c \u0435\u0441\u0442\u044c. \u0418 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0435\u0451 \u0437\u0430\u043c\u0435\u0442\u044f\u0442. \u041d\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u043f\u043e\u043a\u0430 \u043e\u0442\u0432\u043b\u0435\u043a\u0430\u0442\u044c\u0441\u044f &#8212; \u0432 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u044e.<\/p>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u0434\u0443\u043c\u0430\u044e, \u043e\u0447\u0435\u0432\u0438\u0434\u0435\u043d:<\/p>\n<pre><code class=\"python\">import math plus2  = lambda a,b: int(math.log10(10**a * 10**b))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e a<sup>n+m<\/sup> = a<sup>n<\/sup> * a<sup>m<\/sup> <\/p>\n<p>\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c \u043e\u0442 a<sup>n+m<\/sup> \u0440\u0430\u0432\u0435\u043d n+m<\/p>\n<\/div>\n<\/details>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0434\u0443\u043b\u044f operator:<\/p>\n<pre><code class=\"python\">import operator plus3 = lambda a,b: operator.add(a,b)<\/code><\/pre>\n<p>\u041d\u043e \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f:<\/p>\n<pre><code class=\"python\">plus4 = lambda a,b: a.__add__(b)<\/code><\/pre>\n<p>\u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u0435\u0441\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u0430\u044f \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f:<\/p>\n<pre><code class=\"python\">plus5 = lambda a,b: sum([a,b])<\/code><\/pre>\n<p>\u0418 \u0434\u0430\u0436\u0435 \u0432\u043e\u0442 \u0442\u0430\u043a \u043c\u043e\u0436\u043d\u043e:<\/p>\n<pre><code class=\"python\">plus6 = lambda a,b: list(range(a, 200, b))[1]<\/code><\/pre>\n<p>\u0418\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u0434\u043b\u0438\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0438:<\/p>\n<pre><code class=\"python\">plus7 = lambda a,b: len(''.join([a*'#', b*'*']))<\/code><\/pre>\n<p>Python \u0432\u043e\u043e\u0431\u0449\u0435 \u0431\u043e\u0433\u0430\u0442 \u043d\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b:<\/p>\n<pre><code class=\"python\">plus8 = lambda a,b: eval('a + b')<\/code><\/pre>\n<p><em>\u0422\u0443\u0442 \u043c\u043e\u0439 \u0442\u043e\u0432\u0430\u0440\u0438\u0449 \u0432\u043e\u0437\u043c\u0443\u0442\u0438\u043b\u0441\u044f, \u0447\u0442\u043e \u0432\u0438\u0434\u0438\u0442 \u043f\u043b\u044e\u0441, \u0430 \u043f\u043b\u044e\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u0421\u043f\u043e\u0440\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u0412 \u0443\u0441\u043b\u043e\u0432\u0438\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f \u043f\u0440\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 &#8216;+&#8217;, \u0430 \u0437\u0434\u0435\u0441\u044c \u043e\u043d \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0438\u043c\u0432\u043e\u043b. \u0425\u043e\u0442\u044f eval \u0435\u0433\u043e, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043a\u0430\u043a \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440.<\/em><\/p>\n<p>\u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043d\u0435 \u0431\u0443\u0434\u0443 \u0441\u043f\u043e\u0440\u0438\u0442\u044c \u0441 \u0434\u0440\u0443\u0433\u043e\u043c:<\/p>\n<pre><code class=\"python\">plus9 = lambda a,b: eval('a \\N{PLUS SIGN} b')<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u043c\u0432\u043e\u043b \u043f\u043b\u044e\u0441\u0430 \u0447\u0435\u0440\u0435\u0437 \u0435\u0433\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0432 Unicode<\/p>\n<\/div>\n<\/details>\n<p><strong>\u0414\u0440\u0443\u0433: &#171;\u041c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u043c\u0435\u043d\u044f \u0442\u0443\u0442 \u043f\u044b\u0442\u0430\u044e\u0442\u0441\u044f \u043e\u0431\u043c\u0430\u043d\u0443\u0442\u044c. \u0427\u0442\u043e \u044d\u0442\u043e \u0435\u0449\u0451 \u0437\u0430 PLUS SIGN?&#187;<\/strong><\/p>\n<p>\u041b\u0430\u0434\u043d\u043e! \u0421\u0435\u0439\u0447\u0430\u0441 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u043b\u044e\u0441\u043e\u0432:<\/p>\n<pre><code class=\"python\">plus10 = lambda a,b: eval(\"\".join(map(chr, [97, 32, 43, 32, 98])))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e join \u0438\u0437 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0430 &#8216;a + b&#8217;<\/p>\n<\/div>\n<\/details>\n<p><strong>&#171;\u0422\u0430\u043a! \u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0435 eval!&#187;<\/strong><\/p>\n<p>\u0425\u043e\u0440\u043e\u0448\u043e. \u041a\u0441\u0442\u0430\u0442\u0438, \u044f \u0442\u0443\u0442 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043b \u0435\u0449\u0451 \u043f\u0430\u0440\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432. \u041f\u0440\u0430\u0432\u0434\u0430, \u0441 \u043f\u043b\u044e\u0441\u043e\u043c, \u043d\u043e Python \u0434\u0430\u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u044d\u0442\u043e\u0442 \u043f\u043b\u044e\u0441 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c. \u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u043f\u0435\u0440\u0432\u044b\u0439:<\/p>\n<pre><code class=\"python\">import sqlite3 conn = sqlite3.connect(':memory:') cursor = conn.cursor() plus11 = lambda a,b: cursor.execute('select ? + ?', (a,b)).fetchone()[0]<\/code><\/pre>\n<p>\u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u0432\u0442\u043e\u0440\u043e\u0439  (\u0434\u043b\u044f Linux, FreeBSD \u0438 \u0442.\u043f.):<\/p>\n<pre><code class=\"python\">import os plus12 = lambda a,b: int(os.popen(f'expr {a} + {b}').read().strip())<\/code><\/pre>\n<p><strong>&#171;\u042d-\u044d-\u044d, \u043d\u0435\u0442&#8230; \u0414\u0430\u0432\u0430\u0439 \u0432\u043e\u0442 \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e. \u0422\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u041f\u0438\u0442\u043e\u043d\u0430. \u0410 \u0442\u043e \u0442\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0432 \u043a\u0430\u043a\u043e\u043c-\u043d\u0438\u0431\u0443\u0434\u044c \u043e\u043d\u043b\u0430\u0439\u043d-\u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0435 \u0434\u0432\u0430 \u0447\u0438\u0441\u043b\u0430 \u0441\u043b\u043e\u0436\u0438\u0442\u044c, \u0430 \u043f\u043e\u0442\u043e\u043c \u0440\u0430\u0441\u043f\u0430\u0440\u0441\u0438\u0442\u044c \u043e\u0442\u0432\u0435\u0442&#187;<\/strong><\/p>\n<p>\u042d\u0445&#8230; \u0410 \u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u044d\u0434\u0430\u043a\u043e\u0435. \u0427\u0442\u043e-\u0436&#8230; \u041f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0434\u0435\u0442\u0441\u0442\u0432\u043e. \u0421\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u043c &#171;\u0432 \u0441\u0442\u043e\u043b\u0431\u0438\u043a&#187; \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u0435\u043b:<\/p>\n<pre><code class=\"python\">def plus13(aa,bb):     a = f'{aa:0&gt;8b}'     b = f'{bb:0&gt;8b}'     result = ['0'] * 8     carry_bit = '0'     for i in range(7, -1, -1):         if a[i]=='1' and b[i]=='1':             result[i] = carry_bit             carry_bit = '1'         elif (a[i]=='1' and b[i]=='0') or (a[i]=='0' and b[i]=='1'):             if carry_bit == '0':                 result[i] = '1'         else:             if carry_bit == '1':                 result[i] = '1'                 carry_bit = '0'     return int(''.join(result),2)<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435<\/summary>\n<div class=\"spoiler__content\">\n<p>22 + 6 = 10110 + 00110   (\u0441\u0447\u0438\u0442\u0430\u0435\u043c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e, \u0432\u0441\u0435\u0433\u043e \u043f\u044f\u0442\u044c \u0448\u0430\u0433\u043e\u0432)  <\/p>\n<pre><code class=\"bash\">  1    |    2    |    3    |    4    |    5        |    \u25bc1   |   \u25bc1    |         |  10110  |  10110  |  10110  |  10110  |  10110 00110  |  00110  |  00110  |  00110  |  00110 -----  |  -----  |  -----  |  -----  |  -----     0  |     00  |    100  |   1100  |  11100 = 28<\/code><\/pre>\n<p>\u0428\u0430\u0433 2) 1 + 1 = 10. \u0427\u0442\u043e \u043d\u0435 \u0432\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u044f\u0434. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 0 \u043f\u0438\u0448\u0435\u043c, \u0430 \u043d\u0435 \u0432\u043c\u0435\u0441\u0442\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u0431\u0438\u0442 (\u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430, carry bit) \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437\u0440\u044f\u0434.<\/p>\n<p>\u0428\u0430\u0433 3) 1 + 1 = 10 \u043f\u043b\u044e\u0441 \u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 = 11. \u041f\u0438\u0448\u0435\u043c \u043e\u0434\u0438\u043d \u0438 \u043e\u0434\u0438\u043d \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c.<\/p>\n<\/div>\n<\/details>\n<p>\u0410 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e&#8230; \u0427\u0442\u043e \u044d\u0442\u043e \u044f \u0432 \u0431\u0438\u0440\u044e\u043b\u044c\u043a\u0438 \u0438\u0433\u0440\u0430\u044e\u0441\u044c? \u041c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e:<\/p>\n<pre><code class=\"python\">def plus14(a, b):     while b != 0:         carry_bits = a &amp; b         a = a ^ b         b = carry_bits &lt;&lt; 1     return a<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0431\u0438\u0442\u043e\u0432\u043e\u0435 \u0418 (&amp;). \u0422\u0430\u043a \u043c\u044b \u0443\u0437\u043d\u0430\u0435\u043c \u0440\u0430\u0437\u0440\u044f\u0434\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043d\u0430 \u0440\u0430\u0437\u0440\u044f\u0434 \u043b\u0435\u0432\u0435\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0438\u0442\u044b \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043d\u0430 \u0431\u0438\u0442 \u0432\u043b\u0435\u0432\u043e (00110 &lt;&lt; 1 = 01100). \u0418 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0435 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0435 \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0446\u0438\u043a\u043b\u0430. \u0418\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u043c \u0438\u0437 \u0446\u0438\u043a\u043b\u0430, \u0435\u0441\u043b\u0438 \u0431\u0438\u0442\u043e\u0432 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043d\u0435\u0442 (\u043e\u0434\u043d\u043e \u0438\u0437 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0445 \u0441\u0442\u0430\u043b\u043e \u0440\u0430\u0432\u043d\u043e \u043d\u0443\u043b\u044e, \u0437\u043d\u0430\u0447\u0438\u0442 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e).<\/p>\n<pre><code class=\"bash\">10110 00110 ----- &amp; 00110 &lt;&lt; 1 = 01100<\/code><\/pre>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e \u0418\u041b\u0418 (^) \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432 0 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u0438 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u044b\u043c\u0438 \u043d\u0435\u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435. \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u0442\u043e\u0440\u043e\u0435 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0435 \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u0438\u043b\u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u044b.<\/p>\n<pre><code class=\"bash\">10110 00110 ----- ^ 10000<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442:<\/p>\n<pre><code class=\"python\">def plus15(a, b):     if b == 0:         return a     else:         return plus15(a ^ b, (a &amp; b) &lt;&lt; 1)<\/code><\/pre>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c &#8212; \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435! \u0411\u0430\u0440\u0430\u0431\u0430\u043d\u043d\u0430\u044f \u0434\u0440\u043e\u0431\u044c&#8230; \u0421\u043c\u0435\u0440\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440! \u0417\u0430\u043a\u0430\u0442 \u0421\u043e\u043b\u043d\u0446\u0430 \u0432\u0440\u0443\u0447\u043d\u0443\u044e:<\/p>\n<pre><code class=\"python\">import types co = types.CodeType(2, 0, 0, 2, 0, 0, b'|\\x00|\\x01\\x17\\x00S\\x00', (), (),                     ('a','b'), '', '', 1, b'') plus16 = types.FunctionType(co, globals())<\/code><\/pre>\n<p><strong>&#171;\u0422\u0430\u043a&#8230; \u0421\u0435\u043a\u0443\u043d\u0434\u043e\u0447\u043a\u0443&#8230; \u0427\u0442\u043e \u044d\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u0431\u044b\u043b\u043e?&#187;<\/strong><\/p>\n<p>\u0422\u044b-\u0436\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435, \u0447\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0435\u0441\u0442\u044c CodeObject, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 \u041f\u0438\u0442\u043e\u043d\u0430 \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 (\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0435\u043a\u0430 \u0438 \u0442.\u043f.).  \u042d\u0442\u043e\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u043c\u043e\u0436\u043d\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0437 \u043d\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e.<\/p>\n<p><strong>&#171;\u041d\u0443 \u0434\u0430. \u0422\u044b \u0435\u0449\u0451 \u0441\u043a\u0430\u0436\u0438, \u0447\u0442\u043e \u0432 \u0433\u043e\u043b\u043e\u0432\u0435 \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0432 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0448\u044c :)&#187;<\/strong><\/p>\n<p>\u041d\u0435\u0442, \u043a\u043e\u043d\u0435\u0447\u043d\u043e. \u041f\u0440\u043e\u0441\u0442\u043e \u044f \u044d\u0442\u043e \u043f\u0430\u0440\u0443 \u0434\u043d\u0435\u0439 \u043d\u0430\u0437\u0430\u0434 \u0441\u043c\u043e\u0442\u0440\u0435\u043b \u0438 \u043f\u043e\u043a\u0430 \u0435\u0449\u0451 \u043f\u043e\u043c\u043d\u044e.<\/p>\n<details class=\"spoiler\">\n<summary>\u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0442\u0430\u043c \u043d\u0435\u0441\u043b\u043e\u0436\u043d\u043e<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">&gt;&gt;&gt; import dis &gt;&gt;&gt; dis.dis(co)   1           0 LOAD_FAST                0 (a)               2 LOAD_FAST                1 (b)               4 BINARY_ADD               6 RETURN_VALUE<\/code><\/pre>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c, \u044d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0435\u043a.<\/p>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u043a \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043b\u0435\u0433\u043a\u043e \u0434\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; bytecode = plus16.__code__.co_code &gt;&gt;&gt; bytecode b'|\\x00|\\x01\\x17\\x00S\\x00'  &gt;&gt;&gt; list(bytecode) [124, 0, 124, 1, 23, 0, 83, 0]<\/code><\/pre>\n<p>\u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u0442 \u0438\u0437 \u043a\u043e\u0434\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434 (opcode) \u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 (oparg). \u0412\u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b:<\/p>\n<pre><code class=\"python\">124 - LOAD_FAST    # | 23 - BINARY_ADD    # \\x17 83 - RETURN_VALUE  # S<\/code><\/pre>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e dis.opmap \u0438 dis.opname \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0442\u0443\u0434\u0430-\u0441\u044e\u0434\u0430:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; dis.opname[124] 'LOAD_FAST'  &gt;&gt;&gt; dis.opmap('LOAD_CONST') 100<\/code><\/pre>\n<p>\u0410\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 &#8212; \u044d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 a \u0438 b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0433\u043e\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0441\u0442\u0435\u043a \u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0435\u0441\u043b\u0438 \u041f\u0438\u0442\u043e\u043d \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0438\u0436\u0435 3.8, \u0442\u043e \u0442\u0430\u043c \u043f\u0435\u0440\u0435\u0434 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u043e\u043c \u043f\u044f\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0430 \u043d\u0435 \u0448\u0435\u0441\u0442\u044c (\u0432 3.8 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c <em>&#171;\u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b&#187;).<\/em><\/p>\n<\/div>\n<\/details>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0431\u0435\u0437 \u043c\u043e\u0434\u0443\u043b\u044f types \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0442\u0438\u043f\u0430 &#171;\u0444\u0443\u043d\u043a\u0446\u0438\u044f&#187; \u0438 &#171;\u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043e\u0434\u0430&#187; \u043c\u043e\u0436\u043d\u043e \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432: <\/p>\n<pre><code class=\"python\">f = lambda: ... function = type(f) code = type(f.__code__) co = code(2, 0, 0, 2, 0, 0, b'|\\x00|\\x01\\x17\\x00S\\x00', (), (),            ('a','b'), '', '', 1, b'') plus17 = function(co, globals() )<\/code><\/pre>\n<p><strong>&#171;\u0422\u0440\u0438 \u0442\u043e\u0447\u043a\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 &#8212; \u044d\u0442\u043e Ellipsis?&#187;<\/strong><\/p>\n<p>\u0414\u0430. \u041e\u0431\u044a\u0435\u043a\u0442-\u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0434\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u043e pass. \u041f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445.<\/p>\n<p>\u041e! \u041d\u0430\u0441\u0447\u0451\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439. \u0415\u0441\u043b\u0438 \u0443 \u0442\u0435\u0431\u044f Python \u0432\u0435\u0440\u0441\u0438\u0438 3.8+, \u0442\u0430\u043c \u0435\u0441\u0442\u044c \u0437\u0430\u043c\u0435\u043d\u0430 \u043a\u043e\u0434\u043e\u0432\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430:<\/p>\n<pre><code class=\"python\">def plus18(a,b): ... plus18.__code__ = plus18.__code__.replace(   co_code=b'|\\x00|\\x01\\x17\\x00S\\x00')<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0430\u043b, \u043a\u0430\u043a\u0430\u044f \u0447\u0451\u0440\u043d\u0430\u044f \u043c\u0430\u0433\u0438\u044f? \u0412\u0435\u0441\u044c &#171;\u043e\u0431\u0432\u0435\u0441&#187; \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u043e\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0430 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0443\u0436\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c (\u0432 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 &#8212; \u0431\u0430\u0439\u0442-\u043a\u043e\u0434).<\/p>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u0442\u0430\u043c \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u0432 \u044f\u0432\u043d\u043e\u043c \u0432\u0438\u0434\u0435. \u041c\u043e\u0436\u043d\u043e \u043d\u0435 \u0437\u0430\u043c\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441  \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0432\u043e\u0442 \u0442\u0430\u043a: <\/p>\n<pre><code class=\"python\">plus18.__code__ = plus18.__code__.replace(   co_code=(lambda a,b: a + b).__code__.co_code)<\/code><\/pre>\n<p>\u0418, \u0440\u0430\u0437 \u0443\u0436 \u044f \u043f\u043e\u043b\u0435\u0437 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0441\u0447\u0451\u0442 \u0441\u0441\u044b\u043b\u043e\u043a:<\/p>\n<pre><code class=\"python\">def plus19(a,b):     lst = []     value = 0     before = sys.getrefcount(value)     for i in range(a):         lst.append(value)     for i in range(b):         lst.append(value)     return sys.getrefcount(value) - before<\/code><\/pre>\n<p>\u0412\u043e\u0442, \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a&#8230;<\/p>\n<p>. . .<\/p>\n<p><em>{\u043f\u0440\u043e\u0448\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442}<\/em><\/p>\n<p>. . .<\/p>\n<p><strong>&#171;\u0427\u0442\u043e \u043c\u043e\u043b\u0447\u0438\u0448\u044c? \u041d\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432?&#187;<\/strong><\/p>\n<p>\u041e\u0434\u0438\u043d \u0435\u0449\u0451 \u0435\u0441\u0442\u044c. \u0422\u043e\u043b\u044c\u043a\u043e \u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0443 \u0437\u0430\u0431\u044b\u043b. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c. \u0427\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u0441\u0438\u043d\u0443\u0441\u0430 \u0441\u0443\u043c\u043c\u044b \u0443\u0433\u043b\u043e\u0432:<\/p>\n<pre><code class=\"python\">from math import cos, sin, acos def plus20(a,b):     a = a \/ 200     b = b \/ 200     result = acos(cos(a)*cos(b) - sin(a)*sin(b)) * 200     return int(round(result, 0))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 cos(a+b) = cos(a)*cos(b) &#8212; sin(a)*sin(b)<\/p>\n<p>\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0432 \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 &#8212; 198. \u0410 \u0442\u0440\u0438\u0433\u043e\u043d\u043e\u043c\u0435\u0442\u0440\u0438\u044f \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0430\u0434\u0438\u0430\u043d\u0430\u0445. \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u0435\u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0438 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u043e\u0441\u0442\u0430\u0442\u044c\u0441\u044f \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u0438 \u043a\u0440\u0443\u0433\u0430 (\u043e\u043a\u043e\u043b\u043e \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u0440\u0430\u0434\u0438\u0430\u043d) &#8212; \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0435\u043b\u044e \u0438 \u0443\u043c\u043d\u043e\u0436\u0430\u044e \u043d\u0430 200. <\/p>\n<\/div>\n<\/details>\n<p>\u0410 \u043f\u043e\u043a\u0430 \u044f \u043c\u044b\u0441\u043b\u0435\u043d\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0438\u0440, \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043b\u0430\u0441\u044c \u0435\u0449\u0451 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f enumerate, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0443\u043c\u0435\u0440\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b:<\/p>\n<pre><code class=\"python\">plus21 = lambda a,b: list(enumerate([*range(-1,a), *range(b)]))[-1][0]<\/code><\/pre>\n<p>\u0412\u043e\u0442 \u043d\u0430 \u044d\u0442\u043e\u043c, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u0432\u0441\u0451&#8230; \u0421\u0445\u043e\u0434\u0443 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442. \u0420\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u043d\u0430 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445 \u0432\u044b\u043a\u0440\u0443\u0442\u0438\u0442\u044c.  \u041d\u043e \u044d\u0442\u043e \u0442\u044b \u0443\u0436\u0435 \u0441\u0430\u043c \u0441\u0434\u0435\u043b\u0430\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f. \u0410 \u043c\u043d\u0435 \u043f\u043e\u043a\u0430 \u0432\u044b\u0434\u0430\u0439 \u0435\u0449\u0451 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043a\u0430\u0432\u0435\u0440\u0437\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441.   <\/p>\n<p><strong>&#171;\u0412\u043e\u043f\u0440\u043e\u0441 \u044f \u0432\u044b\u0434\u0430\u043c. \u041d\u0435 \u0432\u043e\u043f\u0440\u043e\u0441. \u0427\u0442\u043e \u0442\u0430\u043c \u0441 \u043f\u0435\u0440\u0432\u044b\u043c \u043e\u0442\u0432\u0435\u0442\u043e\u043c? \u0413\u0434\u0435 \u043e\u0448\u0438\u0431\u043a\u0430?&#187;<\/strong><\/p>\n<p>\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u043e PEP 8 \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0442\u044c \u043b\u044f\u043c\u0431\u0434\u044b. \u041d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 def, \u0442.\u043a. \u044d\u0442\u043e <em>&#171;more useful for tracebacks and string representations&#187;<\/em>.  <\/p>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c, \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0438\u0441\u0430\u0442\u044c <\/p>\n<pre><code class=\"python\">fun1 = lambda a: a**2<\/code><\/pre>\n<p>\u043d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"python\">def fun2(a): return a**2<\/code><\/pre>\n<p>\u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043b\u044f\u043c\u0431\u0434\u044b \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437\u044b\u043c\u044f\u043d\u043d\u044b\u043c\u0438 \u0438 \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0442\u044c\u0441\u044f. \u0421\u043c\u043e\u0442\u0440\u0438:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1 &lt;function &lt;lambda&gt; at 0x0000024FEE36F1F0&gt;\t  &gt;&gt;&gt; fun3 = lambda a: 2 * a &gt;&gt;&gt; fun3 &lt;function &lt;lambda&gt; at 0x000001A7571BA550&gt;  &gt;&gt;&gt; fun2 &lt;function fun2 at 0x0000024FEE36F3A0&gt;<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0438\u0448\u044c? \u0423 \u0432\u0441\u0435\u0445 \u043b\u044f\u043c\u0431\u0434 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u0438\u043c\u044f &#8212; &lt;lambda&gt;. \u041a\u043e\u0433\u0434\u0430 \u044f \u0442\u0435\u0431\u0435 \u043e\u0434\u043d\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0438\u0448\u0443 &#8212; \u044d\u0442\u043e \u043d\u0435\u0432\u0430\u0436\u043d\u043e.  \u0410 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u043b\u0443\u0447\u0448\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u043a\u0430\u043a \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e\u0442.<\/p>\n<p><strong>&#171;\u0410 \u043c\u043e\u0436\u043d\u043e \u043b\u044f\u043c\u0431\u0434\u0435 \u0438\u043c\u044f \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c?&#187;<\/strong><\/p>\n<p>\u0414\u0430 \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u043b\u0435\u043c!<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__qualname__ = 'fun1' &gt;&gt;&gt; fun1 &lt;function fun1 at 0x0000024FEE36F1F0&gt;<\/code><\/pre>\n<p>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0447\u0435\u043c \u0442\u0430\u043a\u0438\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u0435\u0441\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u0447\u0435\u0440\u0435\u0437 def \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0432\u0441\u0451 \u0435\u0449\u0451 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u044d\u0442\u043e \u043b\u044f\u043c\u0431\u0434\u0430:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__code__.co_name '&lt;lambda&gt;'<\/code><\/pre>\n<p>\u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun2.__code__.co_name 'fun2'<\/code><\/pre>\n<p>\u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 co_name &#8212; readonly, \u0442.\u0435. \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0438\u043c\u044f \u043d\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c. \u041d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c  __code__.replace (\u043d\u043e \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432 Python 3.8+): <\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__code__ = fun1.__code__.replace(co_name='fun1')<\/code><\/pre>\n<p>\u0418 \u0435\u0449\u0451 \u0432 \u043e\u0434\u043d\u043e\u043c \u043c\u0435\u0441\u0442\u0435:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__name__ = 'fun1'<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u043d\u0430 \u043d\u0435 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__code__.co_name 'fun1' &gt;&gt;&gt; fun1.__qualname__ 'fun1' &gt;&gt;&gt; fun1.__name__ 'fun1' &gt;&gt;&gt; fun1 &lt;function fun1 at 0x0000024FEE36F1F0&gt;<\/code><\/pre>\n<p>\u0420\u0435\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0449\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c def.   <\/p>\n<p>\u0418 \u044f \u0432\u0441\u0451 \u0435\u0449\u0451 \u0436\u0434\u0443 \u043d\u043e\u0432\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441&#8230;   <\/p>\n<p>\u0412\u043f\u0440\u043e\u0447\u0435\u043c&#8230; \u0417\u0430\u0431\u0430\u0432\u043d\u043e \u0443 \u0432\u0430\u0441 \u0442\u0430\u043c \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u0445. \u0421\u0430\u043c\u043e\u043c\u0443, \u0447\u0442\u043e-\u043b\u0438, \u0441\u0445\u043e\u0434\u0438\u0442\u044c? \u041d\u0438 \u0440\u0430\u0437\u0443 \u043d\u0435 \u0431\u044b\u043b. <\/p>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/555488\/\"> https:\/\/habr.com\/ru\/post\/555488\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041c\u043e\u0439 \u0434\u0440\u0443\u0433 \u0410\u043b\u0435\u043a\u0441\u0435\u0439 \u0438\u0449\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f. \u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442\u0441\u044f, \u043a\u0430\u043a-\u0431\u044b \u044f \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>\u041e\u0442\u0432\u0435\u0447\u0430\u044f \u043d\u0430 \u043e\u0434\u0438\u043d \u0442\u0430\u043a\u043e\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u044f \u0441\u043b\u0435\u0433\u043a\u0430 \u0443\u0432\u043b\u0451\u043a\u0441\u044f, \u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430 \u043d\u0430\u0431\u0440\u0430\u043b\u043e\u0441\u044c \u043d\u0430 \u0446\u0435\u043b\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e. \u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0438 \u043d\u0435\u0441\u0435\u0440\u044c\u0451\u0437\u043d\u0443\u044e &#8212; \u043f\u044f\u0442\u043d\u0438\u0447\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430. <\/p>\n<p>\u0425\u043e\u0442\u0438\u0442\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u0432\u043b\u0435\u0447\u044c\u0441\u044f? \u0412\u043e\u043f\u0440\u043e\u0441 \u043b\u0451\u0433\u043a\u0438\u0439. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u0432\u044b \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u043d\u0435\u0433\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u0418\u0442\u0430\u043a:  <\/p>\n<p>&#171;\u0421\u043b\u043e\u0436\u0438\u0442\u044c \u0434\u0432\u0430 \u0446\u0435\u043b\u044b\u0445 \u0447\u0438\u0441\u043b\u0430 (\u043e\u0442 1 \u0434\u043e 99) \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 &#8216;\u043f\u043b\u044e\u0441&#8217;. \u0414\u0430\u0439\u0442\u0435 \u043f\u044f\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0445 \u043e\u0442\u0432\u0435\u0442\u043e\u0432&#187;<\/p>\n<hr>\n<p>\u041d\u0443 \u043a\u0430\u043a? \u041f\u0440\u0438\u0434\u0443\u043c\u0430\u043b\u0438 \u043f\u044f\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u043e\u0432? \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0440\u0430\u0432\u043d\u0438\u043c. \u0415\u0441\u043b\u0438 \u0431\u0443\u0434\u0435\u0442 \u0447\u0442\u043e-\u0442\u043e \u0442\u0430\u043a\u043e\u0435, \u0434\u043e \u0447\u0435\u0433\u043e \u044f \u043d\u0435 \u0434\u043e\u0434\u0443\u043c\u0430\u043b\u0441\u044f &#8212; \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438. <\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 &#8212; \u0445\u0443\u0434\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u0430\u044f &#171;\u0441\u0442\u0435\u043d\u043e\u0433\u0440\u0430\u043c\u043c\u0430&#187; \u043c\u043e\u0435\u0433\u043e \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u043e\u043c.<\/p>\n<hr>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 &#8212; &#171;\u043c\u0438\u043d\u0443\u0441 \u043d\u0430 \u043c\u0438\u043d\u0443\u0441 \u0434\u0430\u0451\u0442 \u043f\u043b\u044e\u0441&#187;:<\/p>\n<pre><code class=\"python\">plus1 = lambda a,b: a - (-b)  &gt;&gt;&gt; plus1(22,6) 28<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0438\u0448\u044c \u043e\u0448\u0438\u0431\u043a\u0443? \u041e\u043d\u0430 \u0437\u0434\u0435\u0441\u044c \u0435\u0441\u0442\u044c. \u0418 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u044c\u044e \u0435\u0451 \u0437\u0430\u043c\u0435\u0442\u044f\u0442. \u041d\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u043f\u043e\u043a\u0430 \u043e\u0442\u0432\u043b\u0435\u043a\u0430\u0442\u044c\u0441\u044f &#8212; \u0432 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u044e.<\/p>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u0434\u0443\u043c\u0430\u044e, \u043e\u0447\u0435\u0432\u0438\u0434\u0435\u043d:<\/p>\n<pre><code class=\"python\">import math plus2  = lambda a,b: int(math.log10(10**a * 10**b))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e a<sup>n+m<\/sup> = a<sup>n<\/sup> * a<sup>m<\/sup> <\/p>\n<p>\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043b\u043e\u0433\u0430\u0440\u0438\u0444\u043c \u043e\u0442 a<sup>n+m<\/sup> \u0440\u0430\u0432\u0435\u043d n+m<\/p>\n<\/div>\n<\/details>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0434\u0443\u043b\u044f operator:<\/p>\n<pre><code class=\"python\">import operator plus3 = lambda a,b: operator.add(a,b)<\/code><\/pre>\n<p>\u041d\u043e \u043c\u043e\u0436\u043d\u043e \u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f:<\/p>\n<pre><code class=\"python\">plus4 = lambda a,b: a.__add__(b)<\/code><\/pre>\n<p>\u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u0435\u0441\u0442\u044c \u0433\u043e\u0442\u043e\u0432\u0430\u044f \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f:<\/p>\n<pre><code class=\"python\">plus5 = lambda a,b: sum([a,b])<\/code><\/pre>\n<p>\u0418 \u0434\u0430\u0436\u0435 \u0432\u043e\u0442 \u0442\u0430\u043a \u043c\u043e\u0436\u043d\u043e:<\/p>\n<pre><code class=\"python\">plus6 = lambda a,b: list(range(a, 200, b))[1]<\/code><\/pre>\n<p>\u0418\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u0434\u043b\u0438\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0438:<\/p>\n<pre><code class=\"python\">plus7 = lambda a,b: len(''.join([a*'#', b*'*']))<\/code><\/pre>\n<p>Python \u0432\u043e\u043e\u0431\u0449\u0435 \u0431\u043e\u0433\u0430\u0442 \u043d\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b:<\/p>\n<pre><code class=\"python\">plus8 = lambda a,b: eval('a + b')<\/code><\/pre>\n<p><em>\u0422\u0443\u0442 \u043c\u043e\u0439 \u0442\u043e\u0432\u0430\u0440\u0438\u0449 \u0432\u043e\u0437\u043c\u0443\u0442\u0438\u043b\u0441\u044f, \u0447\u0442\u043e \u0432\u0438\u0434\u0438\u0442 \u043f\u043b\u044e\u0441, \u0430 \u043f\u043b\u044e\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u0421\u043f\u043e\u0440\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u0412 \u0443\u0441\u043b\u043e\u0432\u0438\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f \u043f\u0440\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 &#8216;+&#8217;, \u0430 \u0437\u0434\u0435\u0441\u044c \u043e\u043d \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0438\u043c\u0432\u043e\u043b. \u0425\u043e\u0442\u044f eval \u0435\u0433\u043e, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043a\u0430\u043a \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440.<\/em><\/p>\n<p>\u0412\u043f\u0440\u043e\u0447\u0435\u043c, \u043d\u0435 \u0431\u0443\u0434\u0443 \u0441\u043f\u043e\u0440\u0438\u0442\u044c \u0441 \u0434\u0440\u0443\u0433\u043e\u043c:<\/p>\n<pre><code class=\"python\">plus9 = lambda a,b: eval('a \\N{PLUS SIGN} b')<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u043c\u0432\u043e\u043b \u043f\u043b\u044e\u0441\u0430 \u0447\u0435\u0440\u0435\u0437 \u0435\u0433\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0432 Unicode<\/p>\n<\/div>\n<\/details>\n<p><strong>\u0414\u0440\u0443\u0433: &#171;\u041c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u043c\u0435\u043d\u044f \u0442\u0443\u0442 \u043f\u044b\u0442\u0430\u044e\u0442\u0441\u044f \u043e\u0431\u043c\u0430\u043d\u0443\u0442\u044c. \u0427\u0442\u043e \u044d\u0442\u043e \u0435\u0449\u0451 \u0437\u0430 PLUS SIGN?&#187;<\/strong><\/p>\n<p>\u041b\u0430\u0434\u043d\u043e! \u0421\u0435\u0439\u0447\u0430\u0441 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u043b\u044e\u0441\u043e\u0432:<\/p>\n<pre><code class=\"python\">plus10 = lambda a,b: eval(\"\".join(map(chr, [97, 32, 43, 32, 98])))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e join \u0438\u0437 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0430 &#8216;a + b&#8217;<\/p>\n<\/div>\n<\/details>\n<p><strong>&#171;\u0422\u0430\u043a! \u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0435 eval!&#187;<\/strong><\/p>\n<p>\u0425\u043e\u0440\u043e\u0448\u043e. \u041a\u0441\u0442\u0430\u0442\u0438, \u044f \u0442\u0443\u0442 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043b \u0435\u0449\u0451 \u043f\u0430\u0440\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432. \u041f\u0440\u0430\u0432\u0434\u0430, \u0441 \u043f\u043b\u044e\u0441\u043e\u043c, \u043d\u043e Python \u0434\u0430\u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u044d\u0442\u043e\u0442 \u043f\u043b\u044e\u0441 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c. \u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u043f\u0435\u0440\u0432\u044b\u0439:<\/p>\n<pre><code class=\"python\">import sqlite3 conn = sqlite3.connect(':memory:') cursor = conn.cursor() plus11 = lambda a,b: cursor.execute('select ? + ?', (a,b)).fetchone()[0]<\/code><\/pre>\n<p>\u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u0432\u0442\u043e\u0440\u043e\u0439  (\u0434\u043b\u044f Linux, FreeBSD \u0438 \u0442.\u043f.):<\/p>\n<pre><code class=\"python\">import os plus12 = lambda a,b: int(os.popen(f'expr {a} + {b}').read().strip())<\/code><\/pre>\n<p><strong>&#171;\u042d-\u044d-\u044d, \u043d\u0435\u0442&#8230; \u0414\u0430\u0432\u0430\u0439 \u0432\u043e\u0442 \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e. \u0422\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u041f\u0438\u0442\u043e\u043d\u0430. \u0410 \u0442\u043e \u0442\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0432 \u043a\u0430\u043a\u043e\u043c-\u043d\u0438\u0431\u0443\u0434\u044c \u043e\u043d\u043b\u0430\u0439\u043d-\u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440\u0435 \u0434\u0432\u0430 \u0447\u0438\u0441\u043b\u0430 \u0441\u043b\u043e\u0436\u0438\u0442\u044c, \u0430 \u043f\u043e\u0442\u043e\u043c \u0440\u0430\u0441\u043f\u0430\u0440\u0441\u0438\u0442\u044c \u043e\u0442\u0432\u0435\u0442&#187;<\/strong><\/p>\n<p>\u042d\u0445&#8230; \u0410 \u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u044d\u0434\u0430\u043a\u043e\u0435. \u0427\u0442\u043e-\u0436&#8230; \u041f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0434\u0435\u0442\u0441\u0442\u0432\u043e. \u0421\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u043c &#171;\u0432 \u0441\u0442\u043e\u043b\u0431\u0438\u043a&#187; \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u0435\u043b:<\/p>\n<pre><code class=\"python\">def plus13(aa,bb):     a = f'{aa:0&gt;8b}'     b = f'{bb:0&gt;8b}'     result = ['0'] * 8     carry_bit = '0'     for i in range(7, -1, -1):         if a[i]=='1' and b[i]=='1':             result[i] = carry_bit             carry_bit = '1'         elif (a[i]=='1' and b[i]=='0') or (a[i]=='0' and b[i]=='1'):             if carry_bit == '0':                 result[i] = '1'         else:             if carry_bit == '1':                 result[i] = '1'                 carry_bit = '0'     return int(''.join(result),2)<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435<\/summary>\n<div class=\"spoiler__content\">\n<p>22 + 6 = 10110 + 00110   (\u0441\u0447\u0438\u0442\u0430\u0435\u043c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e, \u0432\u0441\u0435\u0433\u043e \u043f\u044f\u0442\u044c \u0448\u0430\u0433\u043e\u0432)  <\/p>\n<pre><code class=\"bash\">  1    |    2    |    3    |    4    |    5        |    \u25bc1   |   \u25bc1    |         |  10110  |  10110  |  10110  |  10110  |  10110 00110  |  00110  |  00110  |  00110  |  00110 -----  |  -----  |  -----  |  -----  |  -----     0  |     00  |    100  |   1100  |  11100 = 28<\/code><\/pre>\n<p>\u0428\u0430\u0433 2) 1 + 1 = 10. \u0427\u0442\u043e \u043d\u0435 \u0432\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u0440\u0430\u0437\u0440\u044f\u0434. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 0 \u043f\u0438\u0448\u0435\u043c, \u0430 \u043d\u0435 \u0432\u043c\u0435\u0441\u0442\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u0431\u0438\u0442 (\u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430, carry bit) \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437\u0440\u044f\u0434.<\/p>\n<p>\u0428\u0430\u0433 3) 1 + 1 = 10 \u043f\u043b\u044e\u0441 \u0431\u0438\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 = 11. \u041f\u0438\u0448\u0435\u043c \u043e\u0434\u0438\u043d \u0438 \u043e\u0434\u0438\u043d \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u043c.<\/p>\n<\/div>\n<\/details>\n<p>\u0410 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e&#8230; \u0427\u0442\u043e \u044d\u0442\u043e \u044f \u0432 \u0431\u0438\u0440\u044e\u043b\u044c\u043a\u0438 \u0438\u0433\u0440\u0430\u044e\u0441\u044c? \u041c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e:<\/p>\n<pre><code class=\"python\">def plus14(a, b):     while b != 0:         carry_bits = a &amp; b         a = a ^ b         b = carry_bits &lt;&lt; 1     return a<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0431\u0438\u0442\u043e\u0432\u043e\u0435 \u0418 (&amp;). \u0422\u0430\u043a \u043c\u044b \u0443\u0437\u043d\u0430\u0435\u043c \u0440\u0430\u0437\u0440\u044f\u0434\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043d\u0430 \u0440\u0430\u0437\u0440\u044f\u0434 \u043b\u0435\u0432\u0435\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0438\u0442\u044b \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043d\u0430 \u0431\u0438\u0442 \u0432\u043b\u0435\u0432\u043e (00110 &lt;&lt; 1 = 01100). \u0418 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0435 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0435 \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0446\u0438\u043a\u043b\u0430. \u0418\u043b\u0438 \u0432\u044b\u0445\u043e\u0434\u0438\u043c \u0438\u0437 \u0446\u0438\u043a\u043b\u0430, \u0435\u0441\u043b\u0438 \u0431\u0438\u0442\u043e\u0432 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043d\u0435\u0442 (\u043e\u0434\u043d\u043e \u0438\u0437 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0445 \u0441\u0442\u0430\u043b\u043e \u0440\u0430\u0432\u043d\u043e \u043d\u0443\u043b\u044e, \u0437\u043d\u0430\u0447\u0438\u0442 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e).<\/p>\n<pre><code class=\"bash\">10110 00110 ----- &amp; 00110 &lt;&lt; 1 = 01100<\/code><\/pre>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e \u0418\u041b\u0418 (^) \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432 0 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u0438 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u044b\u043c\u0438 \u043d\u0435\u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435. \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u0442\u043e\u0440\u043e\u0435 \u0441\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0435 \u0434\u043b\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u0438\u043b\u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u044b.<\/p>\n<pre><code class=\"bash\">10110 00110 ----- ^ 10000<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442:<\/p>\n<pre><code class=\"python\">def plus15(a, b):     if b == 0:         return a     else:         return plus15(a ^ b, (a &amp; b) &lt;&lt; 1)<\/code><\/pre>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c &#8212; \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435! \u0411\u0430\u0440\u0430\u0431\u0430\u043d\u043d\u0430\u044f \u0434\u0440\u043e\u0431\u044c&#8230; \u0421\u043c\u0435\u0440\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440! \u0417\u0430\u043a\u0430\u0442 \u0421\u043e\u043b\u043d\u0446\u0430 \u0432\u0440\u0443\u0447\u043d\u0443\u044e:<\/p>\n<pre><code class=\"python\">import types co = types.CodeType(2, 0, 0, 2, 0, 0, b'|\\x00|\\x01\\x17\\x00S\\x00', (), (),                     ('a','b'), '', '', 1, b'') plus16 = types.FunctionType(co, globals())<\/code><\/pre>\n<p><strong>&#171;\u0422\u0430\u043a&#8230; \u0421\u0435\u043a\u0443\u043d\u0434\u043e\u0447\u043a\u0443&#8230; \u0427\u0442\u043e \u044d\u0442\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u0431\u044b\u043b\u043e?&#187;<\/strong><\/p>\n<p>\u0422\u044b-\u0436\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435, \u0447\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0435\u0441\u0442\u044c CodeObject, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u0430 \u041f\u0438\u0442\u043e\u043d\u0430 \u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 (\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0435\u043a\u0430 \u0438 \u0442.\u043f.).  \u042d\u0442\u043e\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u043c\u043e\u0436\u043d\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0437 \u043d\u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e.<\/p>\n<p><strong>&#171;\u041d\u0443 \u0434\u0430. \u0422\u044b \u0435\u0449\u0451 \u0441\u043a\u0430\u0436\u0438, \u0447\u0442\u043e \u0432 \u0433\u043e\u043b\u043e\u0432\u0435 \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0432 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0448\u044c :)&#187;<\/strong><\/p>\n<p>\u041d\u0435\u0442, \u043a\u043e\u043d\u0435\u0447\u043d\u043e. \u041f\u0440\u043e\u0441\u0442\u043e \u044f \u044d\u0442\u043e \u043f\u0430\u0440\u0443 \u0434\u043d\u0435\u0439 \u043d\u0430\u0437\u0430\u0434 \u0441\u043c\u043e\u0442\u0440\u0435\u043b \u0438 \u043f\u043e\u043a\u0430 \u0435\u0449\u0451 \u043f\u043e\u043c\u043d\u044e.<\/p>\n<details class=\"spoiler\">\n<summary>\u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0442\u0430\u043c \u043d\u0435\u0441\u043b\u043e\u0436\u043d\u043e<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"python\">&gt;&gt;&gt; import dis &gt;&gt;&gt; dis.dis(co)   1           0 LOAD_FAST                0 (a)               2 LOAD_FAST                1 (b)               4 BINARY_ADD               6 RETURN_VALUE<\/code><\/pre>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c, \u044d\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0435\u043a.<\/p>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u043a \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043b\u0435\u0433\u043a\u043e \u0434\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; bytecode = plus16.__code__.co_code &gt;&gt;&gt; bytecode b'|\\x00|\\x01\\x17\\x00S\\x00'  &gt;&gt;&gt; list(bytecode) [124, 0, 124, 1, 23, 0, 83, 0]<\/code><\/pre>\n<p>\u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0432 \u0431\u0430\u0439\u0442\u043a\u043e\u0434\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u0442 \u0438\u0437 \u043a\u043e\u0434\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434 (opcode) \u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 (oparg). \u0412\u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b:<\/p>\n<pre><code class=\"python\">124 - LOAD_FAST    # | 23 - BINARY_ADD    # \\x17 83 - RETURN_VALUE  # S<\/code><\/pre>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e dis.opmap \u0438 dis.opname \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0442\u0443\u0434\u0430-\u0441\u044e\u0434\u0430:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; dis.opname[124] 'LOAD_FAST'  &gt;&gt;&gt; dis.opmap('LOAD_CONST') 100<\/code><\/pre>\n<p>\u0410\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 &#8212; \u044d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 a \u0438 b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0433\u043e\u043d\u044f\u044e\u0442\u0441\u044f \u0432 \u0441\u0442\u0435\u043a \u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0435\u0441\u043b\u0438 \u041f\u0438\u0442\u043e\u043d \u0432\u0435\u0440\u0441\u0438\u0438 \u043d\u0438\u0436\u0435 3.8, \u0442\u043e \u0442\u0430\u043c \u043f\u0435\u0440\u0435\u0434 \u0431\u0430\u0439\u0442-\u043a\u043e\u0434\u043e\u043c \u043f\u044f\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0430 \u043d\u0435 \u0448\u0435\u0441\u0442\u044c (\u0432 3.8 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c <em>&#171;\u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b&#187;).<\/em><\/p>\n<\/div>\n<\/details>\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0431\u0435\u0437 \u043c\u043e\u0434\u0443\u043b\u044f types \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0442\u0438\u043f\u0430 &#171;\u0444\u0443\u043d\u043a\u0446\u0438\u044f&#187; \u0438 &#171;\u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043e\u0434\u0430&#187; \u043c\u043e\u0436\u043d\u043e \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432: <\/p>\n<pre><code class=\"python\">f = lambda: ... function = type(f) code = type(f.__code__) co = code(2, 0, 0, 2, 0, 0, b'|\\x00|\\x01\\x17\\x00S\\x00', (), (),            ('a','b'), '', '', 1, b'') plus17 = function(co, globals() )<\/code><\/pre>\n<p><strong>&#171;\u0422\u0440\u0438 \u0442\u043e\u0447\u043a\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 &#8212; \u044d\u0442\u043e Ellipsis?&#187;<\/strong><\/p>\n<p>\u0414\u0430. \u041e\u0431\u044a\u0435\u043a\u0442-\u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0434\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u043e pass. \u041f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445.<\/p>\n<p>\u041e! \u041d\u0430\u0441\u0447\u0451\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439. \u0415\u0441\u043b\u0438 \u0443 \u0442\u0435\u0431\u044f Python \u0432\u0435\u0440\u0441\u0438\u0438 3.8+, \u0442\u0430\u043c \u0435\u0441\u0442\u044c \u0437\u0430\u043c\u0435\u043d\u0430 \u043a\u043e\u0434\u043e\u0432\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430:<\/p>\n<pre><code class=\"python\">def plus18(a,b): ... plus18.__code__ = plus18.__code__.replace(   co_code=b'|\\x00|\\x01\\x17\\x00S\\x00')<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0430\u043b, \u043a\u0430\u043a\u0430\u044f \u0447\u0451\u0440\u043d\u0430\u044f \u043c\u0430\u0433\u0438\u044f? \u0412\u0435\u0441\u044c &#171;\u043e\u0431\u0432\u0435\u0441&#187; \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u043e\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0430 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0443\u0436\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c (\u0432 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 &#8212; \u0431\u0430\u0439\u0442-\u043a\u043e\u0434).<\/p>\n<p>\u0412\u043e\u043e\u0431\u0449\u0435, \u0442\u0430\u043c \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u0432 \u044f\u0432\u043d\u043e\u043c \u0432\u0438\u0434\u0435. \u041c\u043e\u0436\u043d\u043e \u043d\u0435 \u0437\u0430\u043c\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0441  \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0432\u043e\u0442 \u0442\u0430\u043a: <\/p>\n<pre><code class=\"python\">plus18.__code__ = plus18.__code__.replace(   co_code=(lambda a,b: a + b).__code__.co_code)<\/code><\/pre>\n<p>\u0418, \u0440\u0430\u0437 \u0443\u0436 \u044f \u043f\u043e\u043b\u0435\u0437 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0441\u0447\u0451\u0442 \u0441\u0441\u044b\u043b\u043e\u043a:<\/p>\n<pre><code class=\"python\">def plus19(a,b):     lst = []     value = 0     before = sys.getrefcount(value)     for i in range(a):         lst.append(value)     for i in range(b):         lst.append(value)     return sys.getrefcount(value) - before<\/code><\/pre>\n<p>\u0412\u043e\u0442, \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a&#8230;<\/p>\n<p>. . .<\/p>\n<p><em>{\u043f\u0440\u043e\u0448\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442}<\/em><\/p>\n<p>. . .<\/p>\n<p><strong>&#171;\u0427\u0442\u043e \u043c\u043e\u043b\u0447\u0438\u0448\u044c? \u041d\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432?&#187;<\/strong><\/p>\n<p>\u041e\u0434\u0438\u043d \u0435\u0449\u0451 \u0435\u0441\u0442\u044c. \u0422\u043e\u043b\u044c\u043a\u043e \u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0443 \u0437\u0430\u0431\u044b\u043b. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c. \u0427\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u0441\u0438\u043d\u0443\u0441\u0430 \u0441\u0443\u043c\u043c\u044b \u0443\u0433\u043b\u043e\u0432:<\/p>\n<pre><code class=\"python\">from math import cos, sin, acos def plus20(a,b):     a = a \/ 200     b = b \/ 200     result = acos(cos(a)*cos(b) - sin(a)*sin(b)) * 200     return int(round(result, 0))<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0443\u043b\u0430 cos(a+b) = cos(a)*cos(b) &#8212; sin(a)*sin(b)<\/p>\n<p>\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0432 \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 &#8212; 198. \u0410 \u0442\u0440\u0438\u0433\u043e\u043d\u043e\u043c\u0435\u0442\u0440\u0438\u044f \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0430\u0434\u0438\u0430\u043d\u0430\u0445. \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u0435\u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0441\u0442\u044c \u0438 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u043e\u0441\u0442\u0430\u0442\u044c\u0441\u044f \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u0438 \u043a\u0440\u0443\u0433\u0430 (\u043e\u043a\u043e\u043b\u043e \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u0440\u0430\u0434\u0438\u0430\u043d) &#8212; \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0435\u043b\u044e \u0438 \u0443\u043c\u043d\u043e\u0436\u0430\u044e \u043d\u0430 200. <\/p>\n<\/div>\n<\/details>\n<p>\u0410 \u043f\u043e\u043a\u0430 \u044f \u043c\u044b\u0441\u043b\u0435\u043d\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0438\u0440, \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043b\u0430\u0441\u044c \u0435\u0449\u0451 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f enumerate, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0443\u043c\u0435\u0440\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b:<\/p>\n<pre><code class=\"python\">plus21 = lambda a,b: list(enumerate([*range(-1,a), *range(b)]))[-1][0]<\/code><\/pre>\n<p>\u0412\u043e\u0442 \u043d\u0430 \u044d\u0442\u043e\u043c, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u0432\u0441\u0451&#8230; \u0421\u0445\u043e\u0434\u0443 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0432 \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442. \u0420\u0430\u0437\u0432\u0435 \u0447\u0442\u043e \u043d\u0430 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445 \u0432\u044b\u043a\u0440\u0443\u0442\u0438\u0442\u044c.  \u041d\u043e \u044d\u0442\u043e \u0442\u044b \u0443\u0436\u0435 \u0441\u0430\u043c \u0441\u0434\u0435\u043b\u0430\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f. \u0410 \u043c\u043d\u0435 \u043f\u043e\u043a\u0430 \u0432\u044b\u0434\u0430\u0439 \u0435\u0449\u0451 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043a\u0430\u0432\u0435\u0440\u0437\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441.   <\/p>\n<p><strong>&#171;\u0412\u043e\u043f\u0440\u043e\u0441 \u044f \u0432\u044b\u0434\u0430\u043c. \u041d\u0435 \u0432\u043e\u043f\u0440\u043e\u0441. \u0427\u0442\u043e \u0442\u0430\u043c \u0441 \u043f\u0435\u0440\u0432\u044b\u043c \u043e\u0442\u0432\u0435\u0442\u043e\u043c? \u0413\u0434\u0435 \u043e\u0448\u0438\u0431\u043a\u0430?&#187;<\/strong><\/p>\n<p>\u041e\u0448\u0438\u0431\u043a\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u043e PEP 8 \u043d\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0442\u044c \u043b\u044f\u043c\u0431\u0434\u044b. \u041d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0447\u0435\u0440\u0435\u0437 def, \u0442.\u043a. \u044d\u0442\u043e <em>&#171;more useful for tracebacks and string representations&#187;<\/em>.  <\/p>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c, \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0438\u0441\u0430\u0442\u044c <\/p>\n<pre><code class=\"python\">fun1 = lambda a: a**2<\/code><\/pre>\n<p>\u043d\u0430\u0434\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"python\">def fun2(a): return a**2<\/code><\/pre>\n<p>\u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043b\u044f\u043c\u0431\u0434\u044b \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437\u044b\u043c\u044f\u043d\u043d\u044b\u043c\u0438 \u0438 \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0442\u044c\u0441\u044f. \u0421\u043c\u043e\u0442\u0440\u0438:<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1 &lt;function &lt;lambda&gt; at 0x0000024FEE36F1F0&gt;\t  &gt;&gt;&gt; fun3 = lambda a: 2 * a &gt;&gt;&gt; fun3 &lt;function &lt;lambda&gt; at 0x000001A7571BA550&gt;  &gt;&gt;&gt; fun2 &lt;function fun2 at 0x0000024FEE36F3A0&gt;<\/code><\/pre>\n<p>\u0412\u0438\u0434\u0438\u0448\u044c? \u0423 \u0432\u0441\u0435\u0445 \u043b\u044f\u043c\u0431\u0434 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u0438\u043c\u044f &#8212; &lt;lambda&gt;. \u041a\u043e\u0433\u0434\u0430 \u044f \u0442\u0435\u0431\u0435 \u043e\u0434\u043d\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0438\u0448\u0443 &#8212; \u044d\u0442\u043e \u043d\u0435\u0432\u0430\u0436\u043d\u043e.  \u0410 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u043b\u0443\u0447\u0448\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u043a\u0430\u043a \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e\u0442.<\/p>\n<p><strong>&#171;\u0410 \u043c\u043e\u0436\u043d\u043e \u043b\u044f\u043c\u0431\u0434\u0435 \u0438\u043c\u044f \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c?&#187;<\/strong><\/p>\n<p>\u0414\u0430 \u0431\u0435\u0437 \u043f\u0440\u043e\u0431\u043b\u0435\u043c!<\/p>\n<pre><code class=\"python\">&gt;&gt;&gt; fun1.__qualname__ = 'fun1' &gt;&gt;&gt; fun1 &lt;function fun1 at 0x0000024FEE36F1F0&gt;<\/code><\/pre>\n<\/p>\n<\/hr>\n<\/hr>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-323100","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/323100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=323100"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/323100\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=323100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=323100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=323100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}