ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ python
ΠΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° Python?
37 str1k3r [2010-07-27 16:29:00]
Π― ΠΈΡΡ, ΠΊΠ°ΠΊ ΡΠΊΡΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Python.
ΠΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΡΠΈΡΠ°Π»ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ? ΠΠ½Π΅ ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ base64, Π½ΠΎ Ρ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ.
21 ΠΎΡΠ²Π΅Ρ
ΠΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π½ΠΎ ΠΎΠ½ΠΎ Π²ΡΡΡΠΎΠ΅Π½ΠΎ: Π² Python Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π»Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°:
PS: «ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ» ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅, ΡΠ°ΠΊΠΎΠ², ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ΄ (Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , Π½ΠΎ Π±Π΅Π· ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΈ ΡΡΡΠΎΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ). Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΡΠΎΡ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΡΠ°ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌ.
ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΡΠΈΡΠ°Π»ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ?
i ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Ρ!! ΠΊΠΎΠ³Π΄Π° Π²Ρ Π΅Π³ΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΠ΅, Π²Ρ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ½ΡΡΡ. ΡΡΠΎ Ρ Ρ ΠΎΡΡ
ΠΠ°ΠΊ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄. ΠΠΎ Π΄Π°ΠΆΠ΅ ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠΈΠΌΠΎ. ΠΠ°ΠΉΡΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ Π² ΠΏΠΎΠ»ΡΡΠΈΡΠ°Π΅ΠΌΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ.
Base64 ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ , ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ Π·Π°ΡΠΈΡΠΎΠΉ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΊΡΡΠ²Π°ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΠΏΠΎΠ»Π½ΡΡ Π½Π΅Π³ΡΠ°ΠΌΠΎΡΠ½ΡΡ ΠΠ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π»ΡΠ±ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ ΠΏΡΡΠΌΠΎ Π² script (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ script Π² Π²Π°ΡΠ΅ΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π·Π°ΠΊΠΎΠ½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ), ΠΈ ΡΡΠΎ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΎΡΠΌΠ΅Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅/ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠ΅ΡΠΎΠ΄Ρ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π²/Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π²ΡΡΠ°Π²ΠΊΡ ΠΊΠΎΠ΄Π° ΠΌΡΡΠΎΡΠ° ΠΈ Ρ.Π΄., ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΠ°Π΅ΠΌΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ. ΠΠΎ ΠΎΠ½ΠΈ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π±ΡΠ΄ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Python, ΠΈ Python Π½Π΅ ΡΠΏΠΎΡΠΎΠ±Π΅Π½ ΡΡΠ°ΡΡ Π½Π΅ΡΠΈΡΠ°Π΅ΠΌΡΠΌ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ.
21 Dave Webb [2010-07-27 16:39:00]
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ base64 module Π΄Π»Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠΎΠΊ Π΄Π»Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ»Π΅ΡΠΎ ΡΠ΅ΡΡΠΈΠ½Π³Π°, Π½ΠΎ ΡΡΠΎ Π½Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΠΊΠΎΠ³ΠΎ-ΡΠΎ, ΠΊΡΠΎ Π½Π°ΠΉΠ΄Π΅Ρ Π²Π°Ρ ΠΊΠΎΠ΄, Π΅ΡΠ»ΠΈ Ρ Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²Π°ΡΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ.
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ compile() ΠΈ eval() ΡΡΠ½ΠΊΡΠΈΡ, ΡΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ 30 ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π·Π°Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, ΡΠ΄Π΅Π»Π°Π² ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ:
9 xyz [2016-09-05 00:33:00]
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΡΡΠΎΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ/Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C/C++. ΠΡΡΡΠ°ΠΈΠ²Π°Π½ΠΈΠ΅ Python Π² Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
embedded.c
Π ΡΠ΅Π½ΡΠΎΡ, ΡΠ΅Π΄Ρ Π°Ρ, ΡΠ΅Π΄ΠΎΡΠ°
hello_world.py:
Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠΊΡΠΈΠΏΡ Python
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ base64 Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅
ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΡΡΠΎΠΊΡ base 64 Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°
embedded_base64.c
ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΈΡΡ ΠΏΠΈΠΊΠΎΠ½ΠΊΡΠ΅Ρ
ΡΠΈΡΡΠΎΠ²Π°ΡΡ ΠΈ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ OpenAES
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΠ»Π½ΠΎΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅
ΡΠ΄Π°Π»ΠΈΡΡ *.py *.pyc ΠΈΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ *.pye Π² Π΄ΡΡΠ³ΡΡ ΠΏΠ°ΠΏΠΊΡ
Π§Π°ΡΡΠΈΡΠ½ΠΎ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½ (pyconcrete ΠΊΠ°ΠΊ lib)
ΡΠΊΠ°ΡΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ pyconcrete ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ setup.py
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ pyconcrete Π² Π²Π°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΊΡΠΈΠΏΡ
ΠΏΠ»Π°Π½ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ
ΠΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΠΎΠ±ΡΡΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΠΊΠΎΠ΄ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ», ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΡΠΎΠΌΡ (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄):
ΠΠ΄ΠΈΠ½ ΡΡΡΠΊ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄ ΡΡΡΠ΄Π½ΡΠΌ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Ρ: Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΠΉΡΠ΅ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ, ΠΏΡΠΎΡΡΠΎ Π΄Π°ΠΉΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ, Π° Π½Π΅ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΠΎΠΊΠΈΠΌΠΈ, ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ Π½Π° ΡΠΈΠ»ΡΠΌΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ: btmnsfavclr = 16777215 Π³Π΄Π΅ » btmnsfavclr » ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ «Batman Favorite Color», Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 16777215 ΠΈΠ»ΠΈ Π΄Π΅ΡΡΡΠΈΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° » ffffff » ΠΈΠ»ΠΈ Π±Π΅Π»ΡΠΉ. ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠΌΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΡΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠΈΡ Π½Π°Π΄ΠΎΠ΅Π΄Π»ΠΈΠ²ΡΡ Π»ΡΠ΄Π΅ΠΉ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΎΠ²Π΅ΡΡ Π½Π° ΡΡΠΎΠΌ ΡΠ°ΠΉΡΠ΅: Π’ΠΎΠΏ-11 ΡΠΎΠ²Π΅ΡΠΎΠ² ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π°ΡΡΠ΅Π³ΠΎΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΊΠΎΠ΄Π°.
Π― Π±Ρ ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²Π°Π» ΠΊΠΎΠ΄ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅:
7 Isaac [2013-08-09 19:46:00]
Π Π΅Π°Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Python Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΠ°ΡΡ ΠΊΠΎΠ΄. Π ΡΡΠΎΠΉ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ.
4 7h3rAm [2013-09-04 07:33:00]
ΠΠ΅Π΄Π°Π²Π½ΠΎ Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° ΡΡΠΎΡ blogpost: ΠΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Python Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΠ‘Π’, Π³Π΄Π΅ Π°Π²ΡΠΎΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΠ± ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° python Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ AST. Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ HitB CTF ΠΈ, ΠΊΠ°ΠΊ ΡΠ°ΠΊΠΎΠ²ΠΎΠΉ, ΠΈΠΌΠ΅Π» ΡΡΡΠΎΠ³ΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΡΠ·Π»Π°ΠΌ AST, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅. Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅, ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠΉ Π΄Π²ΠΎΠΈΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ/Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ.
Π’Π΅ΠΏΠ΅ΡΡ Π΅ΡΡΡ pyminifier ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π΅Π½. ΠΠ½ Π·Π°ΠΏΡΡΡΠ²Π°Π΅Ρ, ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΈ ΡΠΆΠΈΠΌΠ°Π΅Ρ ΠΊΠΎΠ΄ Python.
3 krs1 [2010-07-27 19:17:00]
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Π°ΠΌ ΡΡΠΎΠΈΡ ΠΈΠ·ΡΡΠΈΡΡ ΡΡΠΎ-ΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ truecrypt volume Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ, ΠΏΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡ, Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΎΠ·Π°Π±ΠΎΡΠ΅Π½Π½ΠΎΡΡΡ Ρ Π²Π°Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π½Π° USB-ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ Π²Π΅ΡΡ ΡΠΎΠΌ (ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ), ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠΎΡΡΠΎ Π²Π·ΡΡΡ ΠΊΠ»ΡΡ Ρ ΡΠΎΠ±ΠΎΠΉ Π² ΠΊΠΎΠ½ΡΠ΅ Π΄Π½Ρ.
Π§ΡΠΎΠ±Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ, Π²Ρ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ PyInstaller ΠΈΠ»ΠΈ py2exe, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΡΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ». ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠΉΡΠΈ Π»ΠΈΡΠ½ΡΡ ΠΌΠΈΠ»Ρ, ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠΏΠ°ΠΊΠΎΠ²ΡΠΈΠΊ ΠΈΠ»ΠΈ ΡΡΠΈΠ»ΠΈΡΡ ΡΠΆΠ°ΡΠΈΡ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ. ΠΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ script Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ Π±ΡΠ» Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΠΌΡΠΌ. ΠΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΡΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΡΡ ΠΏΠΎΠΏΡΡΠΊΡ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈΠ»ΠΈ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
2 Weijar Z [2018-04-18 11:55:00]
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΡΠΎΡ ΠΏΠΈΡΠΎΠ½-ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΎΡ:
Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½ Π½Π°
2 Broam [2010-07-27 17:32:00]
ΠΠ°ΠΊ ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΡ, Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ Ρ ΠΎΡΠΎΡΠΎ. Base64 ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ°ΠΉΡΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½. ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ Python Π±ΡΠ» ΠΏΡΠΎΡΡΠΎ ΠΈΡΡΠΎΠ»ΠΊΠΎΠ²Π°Π½, ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΡΠ°ΡΡΡΡ ΡΡΠΊΠΎΡΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ ΠΌΠ°ΡΠΈΠ½Ρ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π·Π°ΡΡΡΠ΄Π½ΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ.
Python Π±ΡΠ» ΡΠ΄Π΅Π»Π°Π½ ΡΠΈΡΠ°Π΅ΠΌΡΠΌ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ, Π° Π½Π΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΌ. Π―Π·ΡΠΊΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½, Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ»ΠΈ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ Π°Π²ΡΠΎΡΠΎΠ².
Obfuscating ΠΊΠΎΠ΄ python ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ ΡΠ·ΡΠΊΡ. ΠΠ΅ΡΠ΅ΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΠ²ΠΎΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π°.
ΠΡΠΎ (ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ ΡΠ°Π½Π΅Π΅) ΠΏΠΎΡΡΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΎΠ³ΠΎ Ρ ΠΎΡΠΈΡΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ROT13.
1 BuvinJ [2018-10-15 17:26:00]
Cython
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ goto ΠΎΡΠ²Π΅ΡΠΈΡ Π·Π° ΡΡΠΎ Cython. Π― Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΄ΠΈΠ²Π»Π΅Π½, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ Π΅ΡΠ΅ Π½Π΅ ΡΠΏΠΎΠΌΡΠ½ΡΠ» ΠΎΠ± ΡΡΠΎΠΌ? ΠΠΎΡ Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΠ°: https://cython.org/
Π Π΄Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ , ΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ Π²Π°Ρ ΠΏΠΈΡΠΎΠ½ Π² C ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π΄Π΅Π»Π°Ρ Π΅Π³ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Ρ ΠΎΡΠΎΡΠΎ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΠΌ, ΠΊΠ°ΠΊ Π»ΡΠ±Π°Ρ «ΠΎΠ±ΡΡΠ½Π°Ρ» ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΠ°Ρ C-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°.
Π₯ΠΎΡΡ Π΅ΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ. Π― ΡΠ°ΠΌ Π½Π΅ ΠΈΠ·ΡΡΠΈΠ» ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ, Π½Π°ΡΠ°Π² ΡΠΈΡΠ°ΡΡ ΠΎ Π½ΠΈΡ , Ρ ΠΎΡΠ±ΡΠΎΡΠΈΠ» ΡΡΡ ΠΈΠ΄Π΅Ρ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π»Π΅ΠΉ. ΠΠΎ ΡΡΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄Π»Ρ Π²Π°Ρ. ΠΠΎ ΡΡΡΠΈ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Python Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅ΡΠ΅, Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ. ΠΠ΄Π½Π° ΠΈΠ· Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Ρ ΠΌΠ΅Π½Ρ, Π·Π°ΠΊΠ»ΡΡΠ°Π»Π°ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ² Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ π ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΈΡΠ°ΡΡ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ. Π― Π½Π΅ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΠ» ΡΡΠΎ, Π½ΠΎ Ρ ΡΠΎΠΌΠ½Π΅Π²Π°ΡΡΡ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ ΠΈΠ»ΠΈ evals. Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΈΠΌΠΎΡΡΠΈΠ·ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ.
Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ Π·Π°ΠΏΡΡΠ°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ Π±Π°Π·Ρ ΠΊΠΎΠ΄Π° ΠΏΠΎΡΠ»Π΅ ΡΠ°ΠΊΡΠ°, ΠΈΠ»ΠΈ Π² ΠΈΠ΄Π΅Π°Π»Π΅, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Cython, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ.
1 BuvinJ [2018-10-16 15:38:00]
Opy Π·Π°ΠΏΡΡΠ°Π΅Ρ Π²Π°Ρ ΠΎΠ±ΡΠΈΡΠ½ΡΠΉ, ΡΠ΅Π°Π»ΡΠ½ΡΠΉ, ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Python Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ! Π ΠΠ« Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΡΡΠΎ ΡΠΊΡΡΠ²Π°ΡΡ, Π° ΡΡΠΎ Π½Π΅Ρ, ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΡ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ:
ΠΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ·Π½Π°Π½ΠΈΡ, Ρ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°Ρ ΡΡΠΎ ΡΠ°ΠΌ, Π½ΠΎ Π²ΡΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΎΡΠ»ΠΈΡΠ½ΠΎ. ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ Ρ ΠΈΡΠΊΠ°Π»!
ΠΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ°, Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π²Ρ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΠ΅ ΡΠΊΡΠΈΠΏΡ Π² ΠΊΠΎΡΠ΅Π½Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΊΡΡΡΡ, Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π΄Π΅ΡΠ°Π»ΠΈ/ΠΎΠΏΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π― Π½Π΅ Π±ΡΠ» Π²Π»ΡΠ±Π»Π΅Π½ Π² ΡΡΠΎΡ ΠΏΠ»Π°Π½, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ Π²Π°ΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²Π΅ΡΠ½ΡΡΡ ΡΡΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΡΠΊΡΠΈΠΏΡ. (ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π΅ΡΠ½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² py Π² bash/batch, Π½ΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΠΈΡΡΠΎ Python-ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ). Π― ΠΏΠΎΠΏΡΠΎΡΠΈΠ», ΡΡΠΎΠ±Ρ ΠΌΠΎΠΉ ΡΠΎΡΠΊ Π±ΡΠ» ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΠΉ, Π½ΠΎ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π²ΠΎΡ URL ΠΌΠΎΠ΅ΠΉ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ:
ΠΡΡΡ 2 ΡΠΏΠΎΡΠΎΠ±Π° Π·Π°ΠΏΡΡΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Python
ΠΠ°ΠΏΡΡΡΠ²Π°ΡΡ ΡΠΊΡΠΈΠΏΡΡ Python
Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠ°ΠΉΠ» python Π² ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠ΄Π°
ΠΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠ΄Π°, ΠΎΠ±Π΅ΡΠ½ΠΈΡΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΡΠΌΠ°ΡΠΎΠΌ
Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΠ΅
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠΊΡΠΈΠΏΡ-ΠΎΠ±Π΅ΡΡΠΊΡ «xxx.py», $ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π³Π΅.
ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ Python
ΠΠΎΠ³Π΄Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ-ΠΎΠ±Π΅ΡΡΠΊΡ, ΠΏΠ΅ΡΠ²ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ·Π²Π°ΡΡ CFunction:
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ 2 ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°: ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π·Π°ΡΠ΅ΠΌ
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠΉΡΠ΅ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄
ΠΠΎΡΠ»Π΅ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠΎΠ³Π΄Π° Π»ΡΠ±ΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΠ΄Π° Π² ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π²ΠΏΠ΅ΡΠ²ΡΠ΅, ΠΈΠ· ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅, ΠΌΡ Π·Π½Π°Π΅ΠΌ
ΠΡΠΈ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ n ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ·Π²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ PyCFunction. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 3 ΠΈ n ΠΈ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΡΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ 0
ΠΠΎΡΠ»Π΅ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΡ 0. Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π°ΡΡΠΎΡΡΠΈΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄.
2. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½ΠΈΠΆΠ΅ Π½Π° cmd, Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ
3. Π’Π΅ΠΏΠ΅ΡΡ ΡΠΊΠ°ΡΠ°ΠΉΡΠ΅ tcc.
4. ΠΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Python Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ TCC Π²ΠΊΠ»ΡΡΠ°Π΅Ρ.
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΡ Π½ΠΈΠΆΠ΅
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π°. ΠΠΎΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ:
0 RoyMWell [2017-03-31 19:09:00]
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π²ΡΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ΄Π° hello world python Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°ΠΉΡ:
ΠΠ½ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠΉ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ, Π½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ script Π΄Π»Ρ Π²Π°Ρ. ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ Π²Π·Π»ΠΎΠΌΠ°ΡΡ script ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΠ΄. ΠΠ»ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΠ΅Ρ Π»ΠΈ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½, Π΄Π»Ρ ΡΠΏΠΎΠΊΠΎΠΉΡΡΠ²ΠΈΡ.
ΠΠ°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ script, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π»Ρ Π²Π°Ρ ΡΠ΅ΡΠ΅Π· ΡΡΠΎΡ ΡΠ°ΠΉΡ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Unix, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ python.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±, Ρ Π½Π°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ Π²Π°ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ/ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ (Π΅ΡΠ»ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π²Π°ΠΆΠ½Π° Π΄Π»Ρ Π²Π°Ρ). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π½ΠΎ Π²Ρ. ΠΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΡΡΠ°ΡΠΈΡΡ Π½Π° ΡΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΡΠΎΠ±Ρ Π½Π΅ Π±ΡΠ»ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π»Π°Π·Π΅Π΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅, Ρ ΠΊΠΎΠ³ΠΎ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΈΡ ΡΡΠΊΠ°Ρ . Π ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΆΠ΅ ΡΠ²Π»ΡΡΡΡΡ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ Unix. Ρ.Π΅. Openssl ΠΈΠ»ΠΈ base64. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Π°Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉ script Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡΡΠ°ΡΠΈΠ²Π½ΡΠΉ.
0 fortran [2010-07-27 19:35:00]
Π― Π½Π°ΠΏΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΎΡΠ²Π΅Ρ Π΄ΠΈΠ΄Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ.
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΏ Π² ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ΅ Python:
ΡΠΎΠ³Π΄Π° ΠΈΠ΄ΠΈΡΠ΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» this.py Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Lib Π² Π²Π°ΡΠ΅ΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅ Python ΠΈ ΠΏΠΎΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²Π·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΡ eval Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΠΉΡΠΈ Π·Π°Π±Π°Π²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΡΠΈΡΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄. ΠΠΎ Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΡΠΎΡΠΎΠΆΠ½Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π»ΡΠ΄Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅Π½Π΅Π΅ ΡΠΌΠ½Ρ, ΡΠ΅ΠΌ Π²Ρ! (ΠΈ Ρ Π½Π΅ ΠΏΡΡΠ°ΡΡΡ Π±ΡΡΡ ΠΎΡΠΊΠΎΡΠ±ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ, Π»ΡΠ±ΠΎΠΉ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ).
ΠΠ°ΠΏΡΡΡΠ²Π°ΡΡ ΠΊΠΎΠ΄ Python?
Π― ΠΈΡΡ, ΠΊΠ°ΠΊ ΡΠΊΡΡΡΡ ΠΌΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Python.
ΠΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΡΠΈΡΠ°Π»ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ? ΠΠ½Π΅ ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ base64, Π½ΠΎ Ρ Π½Π΅ Π·Π½Π°Ρ, ΠΊΠ°ΠΊ.
17 ΠΎΡΠ²Π΅ΡΠΎΠ²
ΠΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, Π½ΠΎ ΠΎΠ½ΠΎ Π²ΡΡΡΠΎΠ΅Π½ΠΎ: Π² Python Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π»Ρ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄Π°:
PS : Β«ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉΒ» ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅, ΡΠ°ΠΊΠΎΠ², ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ΄ (Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , Π½ΠΎ Π±Π΅Π· ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΈ ΡΡΡΠΎΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ). Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΡΠ°ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌ.
ΡΡΠΎΠ±Ρ ΠΎΠ½ Π½Π΅ ΡΠΈΡΠ°Π»ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ?
ΠΠ°ΠΊ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄. ΠΠΎ Π΄Π°ΠΆΠ΅ ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠΈΠΌΠΎ. ΠΠ°ΠΉΡ-ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ Π² ΠΏΠΎΠ»ΡΡΠΈΡΠ°Π΅ΠΌΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ.
Base64 ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ Π·Π°ΡΠΈΡΠΎΠΉ ΠΈ Β«ΡΠΊΡΡΠ²Π°Π΅ΡΒ» ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ Π½Π΅Π³ΡΠ°ΠΌΠΎΡΠ½ΡΡ ΠΠ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π»ΡΠ±ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ ΠΏΡΡΠΌΠΎ Π² ΡΠΊΡΠΈΠΏΡ (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΊΡΠΈΠΏΡ Π² Π²Π°ΡΠ΅ΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» Π±Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π·Π°ΠΊΠΎΠ½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ), ΠΈ ΡΡΠΎ ΡΡΠ°Π·Ρ ΠΆΠ΅ Π²ΡΠ΄Π°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ /ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠ΅ΡΠΎΠ΄Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² /Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ², ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½, Π²ΡΡΠ°Π²ΠΊΡ ΠΌΡΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Ρ. Π΄., ΡΠ°ΠΊ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠΈΡΠ°Π΅ΠΌΡΠ΅ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΈ. ΠΠΎ ΠΎΠ½ΠΈ, ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π±ΡΠ΄ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ Python, ΠΈ Python Π½Π΅ ΡΠΌΠ΅Π΅Ρ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°ΡΡΡΡ Π² Π½Π΅ΡΠΈΡΠ°Π΅ΠΌΡΠΉ Π±Π΅ΡΠΏΠΎΡΡΠ΄ΠΎΠΊ.
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ compile() ΡΡΠ½ΠΊΡΠΈΡ ΠΈ eval() ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈΡΡΠΎΠ²Π°Π»ΠΈ.
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ 30 ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π·Π°Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ:
ΠΡ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΠΎΠ±ΡΡΡΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π²Ρ Π΄Π΅Π»Π°Π΅ΡΠ΅ ΠΊΠΎΠ΄, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ:
ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΊΠΎΠΉ ΡΠ°ΠΉΠ» (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄):
ΠΠ°ΠΊ ΠΎΠ±ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ python
Python Code Obfuscator
I was browsing /r/dailyprogrammer on Reddit one day, and attempted one of the daily challenges. After doing the challenge, I read through the comments and found a very interesting submission.
Seeing that baffled me at first sight, but after reading /u/ntxhhf’s breakdown of his code, I was inspired to make my own code obfuscator for Python using the ideas in his post.
What exactly does this script do?
It takes your regular-looking Python code, and obfuscates it! It takes any specified Python script, and will attempt to create an equivalent script that has the same exact functionality as the original, but is incredibly difficult for humans to read regularly.
So. how is this useful?
According to Wikipedia.
Programmers may deliberately obfuscate code to conceal its purpose (security through obscurity) or its logic or implicit values embedded in it, primarily, in order to prevent tampering, deter reverse engineering, or even as a puzzle or recreational challenge for someone reading the source code.
Masking Numerical Values
Input: Using Netwon’s Method to find the square root of 17
Output:
There are two ways the parser can encrypt strings. The first way is with hex strings, and the other using the number encoding method above.
Example Input: print(«Hello World!»)
Output
Hiding Calls to Python’s Built-In Functions
In Python, we can call a built-in function indirectly: getattr(__import__(‘builtins’), ‘abs’)(5)
So to call a function, we just use the string-encoding method detailed above. It’s definitely not space-efficient, but it works!
Input: print(chr(65))
Output:
About
Transform regular Python code into a human-averse, yet still-functional equivalent.
ΠΠ°ΠΊ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π·Π°ΠΏΡΡΠ°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ python
ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ python
ΠΠΉ, Ρ ΠΡΠ²ΠΈΠ΄, ΠΈ ΡΠ΅Π³ΠΎΠ΄Π½Ρ Ρ Ρ ΠΎΡΠ΅Π» Π±Ρ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° python. ΠΠ°ΠΏΡΡΡΠ²Π°Π½ΠΈΠ΅-Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΠΈ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ΅ΠΌΠ°, ΠΈ Ρ Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π²Π°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΡΡΡ.
ΠΡΠ½ΠΎΠ²Ρ: Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ
Π€ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΉ Π°ΠΊΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ΄Π½ΠΎ ΠΏΠΎΠ½ΡΡΡ Π»ΡΠ΄ΡΠΌ. ΠΠ½ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π°Π²ΡΠΎΡ Ρ ΠΎΡΠ΅Ρ:
Π₯ΠΎΡΡ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ ΡΠ°ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΠ»ΠΎΡ ΡΡ ΡΠ΅ΠΏΡΡΠ°ΡΠΈΡ ΠΈΠ·-Π·Π° Π°Π²ΡΠΎΡΠΎΠ² Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ ΠΏΠ»ΠΎΡ ΠΈΡ Π°ΠΊΡΠ΅ΡΠΎΠ² Π² ΡΠ΅Π»ΠΎΠΌ, Ρ Π½Π΅Π΅ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΊΠΎΠ½Π½ΡΡ ΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ΅ΠΎΡΠΈΡ, Π»Π΅ΠΆΠ°ΡΠ°Ρ Π² Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅, Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠ°, ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π΅Π·Π³ΡΠ°Π½ΠΈΡΠ½Ρ.
ΠΠ°ΠΊ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΡ Π΅ΠΌΠ°Ρ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π°Π±ΡΡΡΠ°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π»ΡΠ±ΡΡ ΡΡ Π΅ΠΌΡ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΡ Π΅ΠΌΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π»Π° Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ x Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Π»Π° ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π»ΠΈΠ±ΠΎ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, Ρ ΠΎΡΡ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ, Π»ΠΈΠ±ΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ, Π½ΠΎ ΡΠ΄Π°Π»ΡΠ΅Ρ Π½Π΅ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ Π»ΡΠ΄ΡΠΌ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Ρ ΠΎΡΠΎΡΠΈΡ ΡΡ Π΅ΠΌ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ ΡΠΎΡΠ΅ΡΠ°ΡΡ Π² ΡΠ΅Π±Π΅ ΡΡΠΈ Π΄Π²Π°.
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅Ρ Π½ΠΈΠΊΠ° β 1: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°/ΠΏΠ°ΡΡΠ΅ΡΠ°
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΡΠ°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄-ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π²Π°ΡΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ (ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΈΠΌΠ΅Π½Π° ΠΊΠ»ΡΡΠ΅ΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ, Π²ΡΠ΅ ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΡΡ ΡΠ²ΡΠ·Ρ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ; Π±ΡΠ΄ΡΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Ρ).
ΠΠ°Π²Π°ΠΉΡΠ΅ Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄. ΠΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π°, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΌΠ΅Π΄ΠΈΠ°Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π», Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π°.
ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π½Π° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΉ ΡΡΠ°ΡΡΠΈ.
(ΠΊΡΠ΅Π΄ΠΈΡΡ Π½Π° python wiki; https://wiki.python.org/moin/SimplePrograms)
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ:
ΠΡΠΎ ΡΡΡΠ΄Π½Π΅Π΅ ΡΠΈΡΠ°ΡΡ, Π²Π΅ΡΠ½ΠΎ? ΠΡ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·Π²ΠΈΡΡ ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π² Π²ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ Π²ΠΎ ΡΡΠΎ-ΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π±Π»ΠΎΠ½β0β³ΠΈβ O βΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΎΠ½β l β ΠΈ β1β.
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅Ρ Π½ΠΈΠΊΠ° β 2: Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΠ΅
ΠΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΡΠ°ΡΡ python-ΡΡΠΎ ΠΎΡΠ±ΡΠΎΡΠΈΡΡ Π²ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²Π΅ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π²Π°ΡΠΈΡ Π³Π»Π°Π· Π² ΠΊΠΎΠ΄Π΅. ΠΡΠΎ ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, ΡΠ΅ΠΌ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Ρ Π½Π΅ ΡΠ½ΠΈΡΡΠΎΠΆΠ°Π΅ΡΠ΅ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½ΠΎ ΡΡΠΎ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ Π½Π΅ ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈΡ, Π²Π΅ΡΠ½ΠΎ?
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ½ΠΎΠ²Π° Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ Π½Π°Ρ Π·Π°ΠΏΡΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠ±ΡΠ΅ΠΌ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅:
Π₯ΠΎΡΡ ΡΡΠΎ ΠΈ Π½Π΅ Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π°, ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ.
ΠΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠ°Ρ ΡΠ΅Ρ Π½ΠΈΠΊΠ° β 1: ΠΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
ΠΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² int ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ²-Ρ ΠΎΡΠΎΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± Π·Π°ΠΏΡΡΠ°ΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΡΡΡΡ ΠΈΡΡΠΈΠ½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ Π²Π·Π³Π»ΡΠ΄. ΠΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΏΡΠΎΡΡΠΎ grep Π΄Π»Ρ ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΈΡΠ΅Π», ΡΡΡΠΎΠΊ ΠΈΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠ΅Π»ΠΎΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ β 1 β ΠΊΠ°ΠΊ β6+97+45-991+844*23+ 54/8/18575.75β², Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅; xβ ΠΊΠ°ΠΊ
Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ βΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!β ΠΊΠ°ΠΊ
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π
ΠΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² Π²ΠΈΠ΄Π΅ Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
ΠΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΠΈ Ρ ΡΠ΅ΡΠΈΠ» Π½Π΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π΅Π³ΠΎ Π² ΡΡΡ ΡΡΠ°ΡΡΡ, Π½ΠΎ ΠΏΠΎΡΡΠΈ Π²Π΅ΡΡ ΠΊΠΎΠ΄ python ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½ ΠΊΠ°ΠΊ Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ΅ΠΌ Π½Π°Ρ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠΈ Π½Π° ΡΡΠΎ! Π£Π΄Π°ΡΠΈ Π²Π°ΠΌ Π² ΡΡΠΎΠΌ!
ΠΠ± ΠΎΠ΄Π½ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π΅ Π·Π°ΡΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Python-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
ΠΠ°ΠΊ Π²ΡΡ Π½Π°ΡΠΈΠ½Π°Π»ΠΎΡΡ
ΠΠ΄Π½Π°ΠΆΠ΄Ρ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π»Ρ Π½Π°ΡΡΠ½ΡΡ ΡΠ°ΡΡΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python. ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Python Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ ΠΊΠ°ΠΊ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΉ ΡΠ·ΡΠΊ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ², Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ², Π½ΠΎ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠ°Π» ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ°Π΄ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Π±ΡΠ» Ρ ΠΎΡΡ ΠΈ Π½Π΅ Π±ΠΎΠ»ΡΡΠΈΠΌ, Π½ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½Π°ΡΡΡΠ΅Π½Π½ΡΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΠΈΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΡΠ΅ΠΎΡΠΈΠΈ Π³ΡΠ°ΡΠΎΠ², ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ, Π»ΠΈΠ½Π΅ΠΉΠ½Π°Ρ Π°Π»Π³Π΅Π±ΡΠ° ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°. Π’Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΡ, ΠΌΠ΅ΡΠ°ΠΊΠ»Π°ΡΡΡ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈΠ½ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΠΈ. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ numpy ΠΈ scipy, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅.
Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΡΡΠ°Π»ΠΎ ΡΡΠ½ΠΎ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π·Π°ΡΡΠ°ΡΠ½ΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌ. Π‘ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΈ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅ ΡΠ²Π»ΡΠ»ΠΈΡΡ ΠΊΡΠΈΡΠΈΡΠ½ΡΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈ Π±ΡΠ»ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΡΠΌΠΈ ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌΠΈ. ΠΠΎΡΡΠΎΠΌΡ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°Π²ΠΈΡΡ Π²ΡΡ ΠΊΠ°ΠΊ Π΅ΡΡΡ, ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° ΡΠ·ΡΠΊΠ΅ Python. Π ΡΠΎΠΌΡ ΠΆΠ΅, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ ΡΠΆΠ΅ Π±ΡΠ»Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Sphinx.
ΠΡΠΎΠ΅ΠΊΡ ΡΠ²Π»ΡΠ»ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π² ΠΊΡΡΠΏΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ Π±ΡΠ» Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C++, ΡΠ²Π»ΡΠ»ΡΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ, ΠΈΠΌΠ΅Π» Π·Π°ΡΠΈΡΡ Ρ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ ΠΈ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ»ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Π±Π΅Π· ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΊΠΎΠ΄ΠΎΠ².
ΠΠ΄Π΅ΡΡ ΡΡΠ°Π·Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠ»Π°ΡΡ Π½ΠΎΠ²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΊΠ°ΠΊ Π·Π°ΡΠΈΡΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΠΊΠΎΠ΄Ρ Π½Π°ΡΠ΅ΠΉ Python-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ? ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π² ΠΈΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½ΠΈΠΊΡΠΎ Π±Ρ Π½Π΅ ΡΡΠ°Π» ΡΡΠΈΠΌ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ, Ρ Π±Ρ ΡΠΆ ΡΠΎΡΠ½ΠΎ, Π½ΠΎ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π±ΡΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΠΎΡ-Ρ Π°Ρ, ΠΈ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΈ, ΡΡΠΎΠ±Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π°ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠΏΠ°Π»ΠΈ ΠΊ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ°ΠΌ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ Π±ΡΠ» ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π΅ΠΉ, ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. ΠΠ°Π»Π΅Π΅ Ρ ΠΏΠΎΡΡΠ°ΡΠ°ΡΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΠ΄Π΅Π΅, ΡΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π²ΡΡΠ»ΠΎ, ΠΈ ΠΊΠ°ΠΊ Π½Π°ΠΌ ΡΠ΄Π°Π»ΠΎΡΡ ΡΠΊΡΡΡΡ Python-ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΎΡ Π»ΠΈΡΠ½ΠΈΡ Π³Π»Π°Π·.
Π§ΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π»ΡΠ΄ΠΈ
ΠΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Python β ΡΠ·ΡΠΊ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ, Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ Ρ Π±ΠΎΠ³Π°ΡΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΈΠ½ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΠΈ. ΠΠΈΠ½Π°ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ *.pyc ΠΈ *.pyo (Π±Π°ΠΉΡ-ΠΊΠΎΠ΄) Π»Π΅Π³ΠΊΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΡΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΈΡ Π² ΡΠΈΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅ Π½Π΅Π»ΡΠ·Ρ (Π΅ΡΠ»ΠΈ ΡΠΆ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ Π½Π΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ).
ΠΠ°ΠΊ, Ρ Π΄ΡΠΌΠ°Ρ, Π»ΡΠ±ΠΎΠΉ Π½Π° ΠΌΠΎΡΠΌ ΠΌΠ΅ΡΡΠ΅, ΡΠ½Π°ΡΠ°Π»Π° Ρ ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΈΡΠΊΠ°ΡΡ, Π° ΡΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π»ΡΠ΄ΠΈ Π² ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ? ΠΠ΅ΡΠ²ΡΠ΅ ΠΆΠ΅ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ Π»ΡΠ΄ΠΈ Π½Π΅ Π·Π½Π°ΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ ΠΈ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΎΠ± ΡΡΠΎΠΌ Π½Π° stackoverflow ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π½Π° stackoverflow. ΠΠΎΠΈΡΠΊΠ°Π², Ρ ΠΏΡΠΈΡΡΠ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ, ΡΡΠΎ Π²Π΅Π·Π΄Π΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ²:
ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Ρ ΠΎΡΠ±ΡΠΎΡΠΈΠ» Π²ΡΠ΅ ΡΡΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΊΠ°ΠΊ Π½Π΅ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ Python-ΠΊΠΎΠ΄Π°. ΠΡ ΠΊΠ°ΠΊΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΡΠ·ΡΠΊΠ° ΠΏΠΎΡΡΡΠΎΠ΅Π½ Π½Π° ΠΎΡΡΡΡΠΏΠ°Ρ , Π° ΡΠ°ΠΌ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ½ΠΈΠ·Π°Π½ Β«Ρ ΠΈΡΡΠΎΠΉ ΠΈΠ½ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΠ΅ΠΉΒ»? Π’ΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Python-ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² Π±ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠΎΠΆΠ΅ Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΎΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ, Ρ. ΠΊ. ΠΏΡΠΎΠ΅ΠΊΡ, Π½Π°ΠΏΠΎΠΌΠ½Ρ, Π±ΡΠ» Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², Π΄Π° ΠΈ ΡΠ°ΠΌ ΡΠΎΡΡΠΎΡΠ» ΠΈΠ· Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΉ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΎ ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π³ΠΎΠ½ΡΡΡ Π² *.pyd, Π° ΠΏΠΎΡΠΎΠΌ Π»ΠΎΠ²ΠΈΡΡ Π±Π°Π³ΠΈ, Π²ΡΠ»Π΅Π·Π°ΡΡΠΈΠ΅ Π½Π° ΡΠΎΠ²Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΠΎΠ·ΠΈΡΡΡΡ Ρ Π·Π°ΠΌΠ΅Π½ΠΎΠΉ ΠΎΠΏΠΊΠΎΠ΄ΠΎΠ² Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π±Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ±ΠΎΡΠΊΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° Python, Π΄Π° Π΅ΡΡ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌ Python-ΠΌΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ.
Π ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΡΠ° ΠΈΠ΄Π΅Ρ Ρ Π·Π°ΡΠΈΡΠΎΠΉ Python-ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Π°Ρ, Π½Π°Π΄ΠΎ Π²ΡΡ ΡΡΠΎ Π±ΡΠΎΡΠΈΡΡ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, ΡΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΡΠΉΠ΄Π΅Ρ ΠΈ Π·Π°Π½ΡΡΡΡΡ ΡΠ΅ΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ. ΠΡΠ΄Π°ΡΠΌ *.pyc ΡΠ°ΠΉΠ»Ρ ΠΈ Π»Π°Π΄Π½ΠΎ, ΠΊΡΠΎ ΡΠ°ΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ? Π£Π±Π΅Π΄ΠΈΡΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π½Π° C++ Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, Π° ΠΏΡΠΎΠ΅ΠΊΡ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π°Π²Π°ΡΡ. Π ΠΈΡΠΎΠ³Π΅ Π²ΡΡ ΠΆΠ΅ ΠΊΠΎΠ΅-ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΠ± ΡΡΠΎΠΌ, Π΅ΡΠ»ΠΈ Π²ΡΡ Π΅ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅.
Π§ΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΠΌΡ
Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π·Π°ΡΠΈΡΠΈΡΡ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π° ΡΠΈΡΡΠΎΠ²ΠΎΠΌ Π½ΠΎΡΠΈΡΠ΅Π»Π΅ ΠΎΡ ΠΏΠΎΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ? Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠΎΠΎΡΡΠΆΠΈΠ²ΡΠΈΡΡ ΡΡΠΎΠΉ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π΅ΠΉ, Ρ ΡΠ΅ΡΠΈΠ», ΡΡΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π½Π°Π΄ΠΎ ΡΠΈΡΡΠΎΠ²Π°ΡΡ, Π° ΠΈΠ½Π°ΡΠ΅ ΠΈ Π±ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ. ΠΠ»Ρ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ Π½Π°Π±Π»ΡΠ΄Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΡΠ°Π» ΠΏΡΠΎΡΠ²Π»ΡΡΡ ΠΈΠ·Π»ΠΈΡΠ½ΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ, Π²ΡΡ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ ΠΊΡΡΠ° Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ. ΠΠΏΠΎΠ»Π½Π΅ ΡΠ΅Π±Π΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ, Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠ°Ρ ΡΠ΅ΠΌ Π·Π°ΠΌΠ΅Π½ΡΡΡ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ Π²ΡΡΠ°Π²Π»ΡΡΡ ΠΏΡΡΡΡΠ΅ ΡΡΡΠΎΡΠΊΠΈ.
Π₯ΠΎΠ΄ ΠΌΠΎΠΈΡ ΠΌΡΡΠ»Π΅ΠΉ Π±ΡΠ» ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ΄Π΅Ρ, Π΄ΡΠΌΠ°Ρ, ΡΡΠ½Π° β ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠ°Ρ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΡ. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠΎΠ³ΡΠ³Π»ΠΈΠ², Ρ ΠΏΡΠΈΡΡΠ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ, ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΈ Π΄Π°ΠΆΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ. Π‘ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π²ΡΡ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, Π·Π°ΡΠΈΡΡΠΎΠ²Π°ΡΡ ΠΈ/ΠΈΠ»ΠΈ ΠΎΠ±ΡΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ², Π³Π»Π°Π²Π½ΠΎΠ΅, ΡΡΠΎΠ±Ρ ΡΠ°ΠΌ Π±ΡΠ»Π° Β«ΠΊΠ°ΡΠ°Β» ΠΈ Β«Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎΒ», Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΡ ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠΌΡ Π²ΠΈΠ΄Ρ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ (Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ). ΠΠ»Ρ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ Π±ΡΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Python-ΠΌΠΎΠ΄ΡΠ»Ρ base64 Π΄Π»Ρ Β«ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡΒ». Π Π½Π΅ΠΊΡΠΈΡΠΈΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ obfuscate.
Python the Importer Protocol
ΠΡΠ°ΠΊ, Π²ΡΠΎΠ΄Π΅ Π±Ρ Π΄ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π΄ΠΎ ΡΡΡΠΈ. ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠ»Π°ΡΡΠ°, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ΅Π³ΠΎ Importer Protocol, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ. ΠΠ½ Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Β«Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ Β» base64 ΠΈΠ· ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Β«Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅Β» ΡΠ°ΠΉΠ»ΠΎΠ², Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΌΠ΅Π½ΡΠ»ΠΈ ΠΈΡ ΠΈΠΌΠ΅Π½Π° ΠΈ ΡΡΡΡΠΊΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²). Π‘ΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ Π½Π°ΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π±ΡΠ΄ΡΡ Π³ΠΎΡΠ΄ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ «.b64».
ΠΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ? ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΊΠ»Π°ΡΡΠ° ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΌΠΎΠ΄ΡΠ»ΡΡ Π½Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Β«ΡΠΈΡΡΡΠ΅ΠΌΒ». ΠΠ°ΡΠ΅ΠΌ ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΈΡΠ°Π΅ΡΡΡ Π½ΡΠΆΠ½ΡΠΉ Β«Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΉΒ» ΡΠ°ΠΉΠ», Β«ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡΒ» ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΌΠΎΠ΄ΡΠ»Ρ imp ΡΠΆΠ΅ ΠΈΠ· Β«ΡΠ°ΡΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠΉΒ» ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡ? ΠΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ. ΠΡΠΊΠ²Π°Π»ΡΠ½ΠΎ, ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΡΠΊΠΎΠΉ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Β«Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅Β» ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π½Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π° ΠΏΠΎ ΡΡΡΠΈ ΡΡΠ°Π²ΠΈΡΡΡ Ρ ΡΠΊ Π½Π° ΠΈΠΌΠΏΠΎΡΡ:
Π³Π΄Π΅ root_pkg_path Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΡΡ ΠΊ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌΡ ΠΏΠ°ΠΊΠ΅ΡΡ Π½Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ, ΡΠ±ΠΈΡΠ°Ρ Π΄Π°Π½Π½ΡΡ ΡΡΡΠΎΡΠΊΡ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ. ΠΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ, Π° Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
ΠΠΎΡ ΠΈ Π²ΡΡ, Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΠΌΠΏΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈΠ· Π½Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΎΠΌ ΠΈ Β«ΡΠ°ΡΡΠΈΡΡΠΎΠ²ΠΊΠΎΠΉΒ». ΠΠ°Ρ Ρ ΡΠΊ Π±ΡΠ΄Π΅Ρ Π΄ΡΡΠ³Π°ΡΡΡΡ ΠΏΡΠΈ Π»ΡΠ±ΠΎΠΌ Π²ΡΠ·ΠΎΠ²Π΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ import, ΠΈ Π΅ΡΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Ρ ΡΠΊ Π±ΡΠ΄Π΅Ρ ΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡ, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΡ Π±ΡΠ΄ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ. Π§ΡΠΎ Π½Π°ΠΌ ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠΎΠΉ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΈΠΈ. ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠΌΠΏΠΎΡΡΡΡΠ° ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΡΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΡΠΆΠ΅ Π² *.pyd ΡΠ°ΠΉΠ» ΠΈ Π½Π°Π΄Π΅ΡΡΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ Π½ΠΈΠΊΡΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΅Π³ΠΎ Π΄ΠΈΠ·Π°ΡΡΠ΅ΠΌΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ Π² Π½Π°Π΄Π΅ΠΆΠ΄Π΅ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΌΡ ΡΡΡ Π½Π°Π²ΠΎΡΠΎΡΠΈΠ»ΠΈ. Π ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΡΠΎΡΡΠ΅Π΅ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡΡ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠΌΡΠ½ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΡΡΡΡΠΊΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠ²Π°Π½ΠΈΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ Π²ΡΡ, ΡΡΠΎ ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΠΈ ΡΠΉΡΠ° Π²ΡΠ΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π΅ ΡΡΠΎΠΈΡ β Π΄Π°Π²Π½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΈΡΡΠΈΠ½Ρ, Π»ΠΈΠ±ΠΎ Π±ΡΠ΅Π΄ ΡΡΠΌΠ°ΡΡΠ΅Π΄ΡΠ΅Π³ΠΎ. ΠΠΎ Π΅ΡΠ»ΠΈ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ ΠΊΠΎΠΌΡ-ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ, Ρ Π±ΡΠ΄Ρ ΡΠ°Π΄. ΠΠΈΡΠ½ΠΎ Π΄Π»Ρ ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΡΠΉ ΠΎΠΏΡΡ Π±ΡΠ» ΠΏΠΎΠ»Π΅Π·Π΅Π½, Ρ ΠΎΡΡ Π±Ρ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ» Π»ΡΡΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΠΌΠΎΡΠ½ΠΎΠΉ ΠΈ Π³ΠΈΠ±ΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ Importer Protocol. Π ΡΠ΅Ρ ΡΠ°ΠΌΡΡ ΡΡΡΠΊΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΡΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π½Π° Python. ΠΡΠ΅Π³Π΄Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.
UPD 14.08.2013:
ΠΠΎ ΠΏΡΠΎΡΡΠ±Π΅ tangro ΡΠ΄Π΅Π»Π°Π» ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±, Π½ΠΎ Π±Π΅Π· Π½Π°ΡΡΠΎΡΡΠ΅Π³ΠΎ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ (ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΠΎΠ±ΡΠ°ΡΠΈΠΌΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ).
Π‘ΠΊΠ°ΡΠ°ΡΡ zip-Π°ΡΡ
ΠΈΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅. ΠΡΠΆΠ΅Π½ Python 2.7 x86 ΠΏΠΎΠ΄ Windows. ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠΊΡΠΈΠΏΡ Β«test_main.pyΒ».
UPD 2:
Π Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ Π²ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΡ ΠΈ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈΠ· Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠΊΡΡΡΡ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅. Π‘ΠΊΠ°ΡΠ°ΡΡ Π°ΡΡ
ΠΈΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.