ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΠ½ΡΠ΅ ΡΡΠ½ΡΠΈΠΈ (generator functions)
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°ΡΠΎΠ² ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎ, ΡΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ Π΄Π°ΡΡ ΠΏΡΠΈΡΠΎΡΡΠ° ΡΠΊΠΎΡΠΎΡΡΠΈ, Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ½ΡΠΈΠ΅ΠΉ Π² python Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊ ΠΈΡΠ΅ΡΠ°ΡΠΎΡ. ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ yield.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°ΡΠΎΠ² ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎ, ΡΠΎ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ Π΄Π°ΡΡ ΠΏΡΠΈΡΠΎΡΡΠ° ΡΠΊΠΎΡΠΎΡΡΠΈ, Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΏΠ°ΠΌΡΡΡ.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ½ΡΠΈΠ΅ΠΉ Π² python Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊ ΠΈΡΠ΅ΡΠ°ΡΠΎΡ. ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ yield.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΠ°ΠΊ Π½Π°ΡΠ°ΡΡ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΏΡΠΈ ΡΡΠ΅ΡΠΊΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
ΠΠ»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΡΡΠ΅ΡΠ΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ Π² Python ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Memory Profiler ΠΈΠ»ΠΈ objgraph.
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ python -m memory_profiler my_script.py. ΠΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΎΡΡΠ΅Ρ ΠΎ ΡΠΎΠΌ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π»ΡΠ±ΡΠ΅ ΡΡΠ΅ΡΠΊΠΈ.
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ my_list.png, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ»Π°Π΅ΡΡΡ my_list, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° Π½ΠΈΡ . ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄Π΅ΡΠΆΠ°Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π°ΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ΅ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΠ»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΡΡΠ΅ΡΠ΅ΠΊ ΠΏΠ°ΠΌΡΡΠΈ Π² Python ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Memory Profiler ΠΈΠ»ΠΈ objgraph.
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ python -m memory_profiler my_script.py. ΠΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΉ ΠΎΡΡΠ΅Ρ ΠΎ ΡΠΎΠΌ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ Π»ΡΠ±ΡΠ΅ ΡΡΠ΅ΡΠΊΠΈ.
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ my_list.png, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ»Π°Π΅ΡΡΡ my_list, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° Π½ΠΈΡ . ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄Π΅ΡΠΆΠ°Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π°ΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ΅ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
Π§ΡΠΎ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΡΠΎΡ ΠΊΠΎΠ΄?
Anonymous Quiz
33%
True
35%
False
26%
ΠΡΠΈΠ±ΠΊΡ
6%
Π£Π·Π½Π°ΡΡ ΠΎΡΠ²Π΅Ρ
Π§ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅
Π Python ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΡΠΈΡΠ»ΠΎ, ΡΡΡΠΎΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠΎΡΡΠ΅ΠΆ.
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΡΡ ΡΠ²Π»ΡΡΡΡΡ ΡΠΈΡΠ»ΠΎ 1, ΡΡΡΠΎΠΊΠ° βtwoβ ΠΈ ΠΊΠΎΡΡΠ΅ΠΆ (3, 4). ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ, ΠΊΠ°ΠΊ ΠΊΠ»ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ TypeError.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
Π Python ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠ»ΠΎΠ²Π°ΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΡΠΈΡΠ»ΠΎ, ΡΡΡΠΎΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠΎΡΡΠ΅ΠΆ.
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΡΡ ΡΠ²Π»ΡΡΡΡΡ ΡΠΈΡΠ»ΠΎ 1, ΡΡΡΠΎΠΊΠ° βtwoβ ΠΈ ΠΊΠΎΡΡΠ΅ΠΆ (3, 4). ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ, ΠΊΠ°ΠΊ ΠΊΠ»ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ TypeError.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
π€2
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° igraph ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΡΠ°ΡΠ°ΠΌΠΈ ΠΈ ΡΠ΅ΡΡΠΌΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠΎΠΈΡΡ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ
.
Igraph ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Π°Π½Π°Π»ΠΈΠ·Π΅ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΉ, ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡΡ ΠΊΡΡΠΏΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅Π±-ΡΡΡΠ»ΠΎΠΊ), Π² Π±ΠΈΠΎΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ΅ Π΄Π»Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π±Π΅Π»ΠΊΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ Π·Π°Π΄Π°Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΠ΅ΠΎΡΠΈΠ΅ΠΉ Π³ΡΠ°ΡΠΎΠ².
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ igraph Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΈ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π³ΡΠ°ΡΠΎΠ², Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ΅ΠΏΠ΅Π½Ρ Π²Π΅ΡΡΠΈΠ½, Π΄ΠΈΠ°ΠΌΠ΅ΡΡ Π³ΡΠ°ΡΠ°), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΈΡΠΊ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ² ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ².
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
Igraph ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Π°Π½Π°Π»ΠΈΠ·Π΅ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΉ, ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡΡ ΠΊΡΡΠΏΠ½ΡΡ ΡΠ΅ΡΠ΅ΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅Π±-ΡΡΡΠ»ΠΎΠΊ), Π² Π±ΠΈΠΎΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΊΠ΅ Π΄Π»Ρ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π±Π΅Π»ΠΊΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ Π·Π°Π΄Π°Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΡΠ΅ΠΎΡΠΈΠ΅ΠΉ Π³ΡΠ°ΡΠΎΠ².
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ igraph Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΈ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π³ΡΠ°ΡΠΎΠ², Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ΅ΠΏΠ΅Π½Ρ Π²Π΅ΡΡΠΈΠ½, Π΄ΠΈΠ°ΠΌΠ΅ΡΡ Π³ΡΠ°ΡΠ°), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΈΡΠΊ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ² ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠ².
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Python Π΄Π»Ρ ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π° ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ NFT (Non-Fungible Tokens).
ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ, Π½ΠΎ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΠΌΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.
ΠΠ²ΡΠΎΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ±ΠΎΡΠ° Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΄ΠΎΠ±ΡΡΠΈ ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡ Π² ΠΈΠ³ΡΠ΅ RPG, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ PyAutoGUI.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ, Π½ΠΎ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΠΌΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ.
ΠΠ²ΡΠΎΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ±ΠΎΡΠ° Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΄ΠΎΠ±ΡΡΠΈ ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡ Π² ΠΈΠ³ΡΠ΅ RPG, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ PyAutoGUI.
π Π£ΠΊΡΡ ΠΏΠΈΡΠΎΠ½Π° // π¬ Π§Π°Ρ // #ΡΠ΅ΠΎΡΠΈΡ #if #ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
π1
π₯ Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ Python, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ±ΡΠ°Π½Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΡΡ
Π·Π°Π΄Π°Ρ
ΠΠΎΡ, ΠΊΡΡΠ°ΡΠΈ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
β Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»
β ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ
ΠΠΎΡ, ΠΊΡΡΠ°ΡΠΈ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
β Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»
sample.txt
ΠΊ Π°ΡΡ
ΠΈΠ²Ρ .tar.gz
:import tarfile
with tarfile.open('sample.tar.gz', 'w:gz') as tar:
tar.add('sample.txt')
β ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ
import difflib
diff = difflib.ndiff('one\ntwo\nthree\n'.splitlines(keepends=True),
'ore\ntree\nemu\n'.splitlines(keepends=True))
print(''.join(diff))
Π§ΡΠΎ Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΊΠΎΠ΄
Anonymous Quiz
28%
['1', '2', '3', '4' ]
8%
['1 2 3 4' ]
11%
'1 2 3 4'
53%
14243