ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² Python ΠΏΡΠΎΡΡΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ / Π₯Π°Π±Ρ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π²Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΈΠ·ΡΡΠΈΡΠ΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊ ΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ Β«Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈΒ». ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅, ΠΊΠ°ΠΊΠΎΠ² ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ( Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ).
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² Python ΡΠ²Π»ΡΡΡΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠΌΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ Π±Π΅Π·ΡΠΌΡΠ½Π½Π°. ΠΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ² def
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Python Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ. Π ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ lambda
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
Lambda Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ: Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ. ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ-ΡΡΠ½ΠΊΡΠΈΡ.
1.1. ΠΡΠΈΠΌΠ΅Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ΄Π²Π°ΠΈΠ²Π°ΡΡΠ΅ΠΉ Π²Π²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
double = lambda x: x*2 print(double(5))
ΠΡΠ²ΠΎΠ΄:
10
Π Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ lambda x: x*2
β ΡΡΠΎ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ. ΠΠ΄Π΅ΡΡ
x
β ΡΡΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, Π° x*2
β ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ.
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π±Π΅Π·ΡΠΌΡΠ½Π½Π°Ρ. ΠΠ½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ double
. Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΠΈΡΠ°ΡΡ Π΅Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ.
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ:
double = lambda x: x*2
ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Π°:
def double(x): return x * 2
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ-ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄Π½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π°ΡΡΠ΄Ρ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΡΡΠ½ΠΊΡΠΈΡΡ .
2. Π Π°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΏΠΎΠ½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ (Def
) Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ lambda
βΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π² ΠΊΡΠ±:
def defined_cube(y): return y*y*y lambda_cube = lambda y: y*y*y print(defined_cube(2)) print(lambda_cube(2))
ΠΡΠ²ΠΎΠ΄:
8 8
ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅, ΠΎΠ±Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, defined_cube()
ΠΈ lambda_cube()
, Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, ΠΊΠ°ΠΊ ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡ.
Π Π°Π·Π±Π΅ΡΠ΅ΠΌ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
ΠΠ΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π»ΡΠΌΠ±Π΄Ρ: ΠΠ΄Π΅ΡΡ ΠΎΠ±Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π² ΠΊΡΠ±. ΠΠΎ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ
def
, Π½Π°ΠΌ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈdefined_cube()
Π΄Π°ΡΡ Π΅ΠΉ Π²Ρ ΠΎΠ΄Π½ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ. ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΎΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΠΈΠ· ΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, ΠΎΡΠΊΡΠ΄Π° Π±ΡΠ»Π° Π²ΡΠ·Π²Π°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ, ΠΈ ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎreturn
.Π‘ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π»ΡΠΌΠ±Π΄Ρ: ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Ρ Π½Π΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ
return
, Π° Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Ρ Π² Π»ΡΠ±ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ, Π³Π΄Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΈ Π½Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π’Π°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΏΡΠΎΡΡΡΠ΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ.
3. ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½Π΅Π½Π°Π΄ΠΎΠ»Π³ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±Π΅Π·ΡΠΌΡΠ½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ.
Π Python ΠΌΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΈΡ
ΠΊΠ°ΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° (ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²). ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΠΊΠ°ΠΊ filter()
, map()
,reduce()
ΠΈ Π΄Ρ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΉ.
3.1. ΠΡΠΈΠΌΠ΅Ρ Ρ filter()
Π€ΡΠ½ΠΊΡΠΈΡ filter()
Π² Python ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΡΠΏΠΈΡΠΎΠΊ .
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅, ΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ
ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΠ΅Ρ Π²
True
.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ filter()
Π΄Π»Ρ ΠΎΡΠ±ΠΎΡΠ° ΡΠ΅ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π» ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°.
my_list = [1, 3, 4, 6, 10, 11, 15, 12, 14] new_list = list(filter(lambda x: (x%2 == 0) , my_list)) print(new_list)
ΠΡΠ²ΠΎΠ΄:
[4, 6, 10, 12, 14]
3.2. ΠΡΠΈΠΌΠ΅Ρ Ρ map()
Π€ΡΠ½ΠΊΡΠΈΡ map()
ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΡΠΏΠΈΡΠΎΠΊ.
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅, ΠΈ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ map()
Π΄Π»Ρ ΡΠ΄Π²ΠΎΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ°.
current_list = [1, 3, 4, 6, 10, 11, 15, 12, 14] new_list = list(map(lambda x: x*2 , current_list)) print(new_list)
ΠΡΠ²ΠΎΠ΄:
[2, 6, 8, 12, 20, 22, 30, 24, 28]
3.3. ΠΡΠΈΠΌΠ΅Ρ Ρ reduce()
Π€ΡΠ½ΠΊΡΠΈΡ reduce()
ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΡΠΏΠΈΡΠΎΠΊ. Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΌΠ΅Π½ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. Π’Π°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ°ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π½Π°Π΄ ΠΏΠ°ΡΠ°ΠΌΠΈ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². Π€ΡΠ½ΠΊΡΠΈΡ
reduce()
Π²Ρ
ΠΎΠ΄ΠΈΡ Π² ΡΠΎΡΡΠ°Π² ΠΌΠΎΠ΄ΡΠ»Ρ functools
.
from functools import reduce current_list = [5, 15, 20, 30, 50, 55, 75, 60, 70] summa = reduce((lambda x, y: x + y), current_list) print(summa)
ΠΡΠ²ΠΎΠ΄:
380
ΠΠ΄Π΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π΄Π²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠΌΠΌΠΈΡΡΡΡΡΡ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ, ΠΈ ΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΡΠΏΠΈΡΠΊΠ°, Π²ΠΎΡ ΡΠ°ΠΊ:
5+15+20+30+50+55+75+60+70
4. ΠΡΠΌΠ±Π΄Π° ΠΈ ΡΠΏΠΈΡΠΊΠΎΠ²ΠΎΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎ ΡΠΏΠΈΡΠΊΠΎΠ²ΡΠΌ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Ρ ΡΠΈΠΊΠ»ΠΎΠΌ
for
. ΠΡ Π²ΡΠ²Π΅Π΄Π΅ΠΌ Π½Π° ΡΠΊΡΠ°Π½ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ· 10 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².tables = [lambda x = x: x*10 for x in range(1, 11)] for table in tables: print(table())
ΠΡΠ²ΠΎΠ΄:
10 20 30 40 50 60 70 80 90 100
5. ΠΡΠΌΠ±Π΄Π° ΠΈ ΡΡΠ»ΠΎΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠΉ if-else Π² Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ°ΠΊ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, Python ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡ
ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ Π² Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ³ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΡΡ Π΄Π²Π΅ ΡΠΈΡΡΡ, ΠΈ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠ· Π½ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ.
max_number = lambda a, b: a if a > b else b print(max_number(3, 5))
ΠΡΠ²ΠΎΠ΄:
5
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ Π² Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ.
6. ΠΡΠΌΠ±Π΄Π° ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π²Π΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ·Π²Π°ΡΡ Π²ΡΠΎΡΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π½Π°ΠΉΡΠΈ Π²ΡΠΎΡΠΎΠΉ ΠΏΠΎ Π²Π΅Π»ΠΈΡΠΈΠ½Π΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π»ΡΠΌΠ±Π΄Ρ.
current_list = [[10,6,9],[0, 14, 16, 80],[8, 12, 30, 44]] sorted_list = lambda x: (sorted(i) for i in x) second_largest = lambda x, func: [y[len(y)-2] for y in func(x)] result = second_largest(current_list, sorted_list) print(result)
ΠΡΠ²ΠΎΠ΄:
[9, 16, 30]
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅. ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π΄Π»Ρ Π²ΡΠΎΡΠΎΠΉ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ
n-2
ΠΈΠ· ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°, Π³Π΄Π΅ n
β Π΄Π»ΠΈΠ½Π° Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Python lambda
-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅:
ΠΠΈΡΠ°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ.
Π Π°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΡΠ½ΡΠΌΠΈ ΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π² Python.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Ρ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΠΈΠ»ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Ρ Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡΠΌΠΈ ΡΠΏΠΈΡΠΊΠΎΠ².
ΠΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΊ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡΠΌ.
ΠΠ°ΡΡΠΈΠΊ ΡΠΎΡΡΠ°Π²Π° ΡΠΌΠ΅ΡΠΈ UEGO X-Series (ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ, ΡΠΈΡΠΎΠΊΠΎΠΏΠΎΠ»ΠΎΡΠ½ΡΠΉ Π»ΡΠΌΠ±Π΄Π° Π·ΠΎΠ½Π΄) Bosch 4,9 LSU 30-0300, AEM
AEM UEGO X-Series : ΡΠ°ΠΌΡΠΉ Π±ΡΡΡΡΡΠΉ ΠΈ ΡΠΎΡΠ½ΡΠΉ Π»ΡΠΌΠ±Π΄Π° Π·ΠΎΠ½Π΄ ΠΈΠ· ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ
Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ.
ΠΠΌΠ΅ΡΠΈΠΊΠ°Π½ΡΠΊΠΈΠΉ Π±ΡΠ΅Π½Π΄ AEM Π½Π΅ Π½ΡΠΆΠ΄Π°Π΅ΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ. ΠΠ½ Ρ
ΠΎΡΠΎΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ Π°Π²ΡΠΎΡΠΏΠΎΡΡΡ ΠΈ ΡΡΠ½ΠΈΠ½Π³Ρ. AEM UEGO X-Series β ΡΡΠΎ Π»ΡΡΡΠ°Ρ ΡΠΈΡΠΎΠΊΠΎΠΏΠΎΠ»ΠΎΡΠ½Π°Ρ Π»ΡΠΌΠ±Π΄Π° Ρ ΡΠΈΡΡΠΎΠ²ΡΠΌ Π΄ΠΈΡΠΏΠ»Π΅Π΅ΠΌ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π² Π»ΠΈΠ½Π΅ΠΉΠΊΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ AEM, ΠΈ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, Π»ΡΡΡΠ°Ρ Π² ΠΌΠΈΡΠ΅.



ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π°
Π
ΠΠΎΡΠ΄ΠΎΠ½ Π‘ΠΊΠΎΡΡ
ΠΠΎΠ»Π½Π°Ρ Π±ΠΈΠΎΠ³ΡΠ°ΡΠΈΡ
ΠΠΎΡΠ΄ΠΎΠ½ Π‘ΠΊΠΎΡΡ Π±ΡΠ» Π°ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈΠ½Π²Π΅ΡΡΠΎΡΠΎΠΌ ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΌ Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ. ΠΠ½ Π΄ΠΈΠΏΠ»ΠΎΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ ΠΏΠΎ ΡΡΠ½ΠΊΡ (CMT).
Π£Π·Π½Π°ΠΉΡΠ΅ ΠΎ Π½Π°ΡΠ΅ΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΎΠ½Π½Π°Ρ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ 29 Π°ΠΏΡΠ΅Π»Ρ 2022 Π³.
Π€Π°ΠΊΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½
Π‘ΠΊΠ°ΠΉΠ»Π°Ρ ΠΠ»Π°ΡΠΈΠ½
Π€Π°ΠΊΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ Π‘ΠΊΠ°ΠΉΠ»Π°Ρ ΠΠ»ΡΡΠΈΠ½
ΠΠΎΠ»Π½Π°Ρ Π±ΠΈΠΎΠ³ΡΠ°ΡΠΈΡ
Π‘ΠΊΠ°ΠΉΠ»Π°Ρ ΠΠ»ΡΡΠΈΠ½ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ ΡΠ°ΠΊΡΠΎΠ² ΠΈ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠΌ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π»ΠΈΡΠ½ΡΡ
ΡΠΈΠ½Π°Π½ΡΠΎΠ² Ρ ΠΎΠ±ΡΠΈΡΠ½ΡΠΌ ΠΎΠΏΡΡΠΎΠΌ, Π²ΠΊΠ»ΡΡΠ°Ρ Π²Π΅ΡΠ΅ΡΠΈΠ½Π°ΡΠ½ΡΠ΅ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ»ΡΠΌΠΎΠ².
Π£Π·Π½Π°ΠΉΡΠ΅ ΠΎ Π½Π°ΡΠ΅ΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΎΠ½Π½Π°Ρ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π»ΡΠΌΠ±Π΄Π°?
Π ΡΠΎΡΠ³ΠΎΠ²Π»Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°ΠΌΠΈ Π»ΡΠΌΠ±Π΄Π° β ΡΡΠΎ Π³ΡΠ΅ΡΠ΅ΡΠΊΠ°Ρ Π±ΡΠΊΠ²Π°, ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π΅ΡΠ°, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΎΠ½ΠΎΠΌ, ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ΅Π½Ρ ΡΡΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΎΠ½Π°. ΠΡΠ° ΠΌΠ΅ΡΠ° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½ΡΠΎΠΌ Π·Π°Π΅ΠΌΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΈΠ»ΠΈ, Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΡΡΠ°Π½Π°Ρ , ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΡΡΠ°Π³ΠΎΠΌ.
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ
- ΠΠ½Π°ΡΠ΅Π½ΠΈΡ Π»ΡΠΌΠ±Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π΅ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΎΠ½ΠΎΠΌ.
- Π‘ΡΠΈΡΠ°Π΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Β«ΠΠ°Π»ΡΡ Π³ΡΠ΅ΠΊΠΎΠ²Β» Π² ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎΠΉ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΠ΅. ΠΡΡ ΠΌΠ΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π°Ρ ΠΎΠ΄ΡΡ, ΡΠ°Π±ΠΎΡΠ°Ρ Ρ Π΄Π΅Π»ΡΡΠΎΠΉ.
- ΠΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»Π΅Π½ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ Π²ΠΎΠ»Π°ΡΠΈΠ»ΡΠ½ΠΎΡΡΠΈ, Π½ΠΎ ΠΎΠ½ Π½Π΅ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Π΅Π³Π°.
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Ρ
ΠΡΠΌΠ±Π΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΡΡΡΠΈΡΠΈΠ΅Π½Ρ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π΅ΡΠ° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡ ΠΎΠΏΡΠΈΠΎΠ½ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ΅Π½Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°ΠΊΡΠΈΠ²Π° Π½Π° 1%. ΠΡΠΌΠ±Π΄Π° β ΡΡΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΈΡΠ°ΡΡΠ΅Π΅ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Β«ΠΌΠΈΠ½ΠΎΡΠ½ΡΡ
Π³ΡΠ΅ΠΊΠΎΠ²Β», ΠΈ ΠΎΠ½ΠΎ ΡΠΈΡΠΎΠΊΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π΄ΡΡΠ³ΠΈΡ
Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π³ΡΠ΅ΠΊΠΎΠ². Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ, ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ΅ ΠΏΠ»Π΅ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ΅ΠΉΠ΄Π΅Ρ Π² ΡΠΎΡΠ³ΠΎΠ²Π»Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°ΠΌΠΈ. Π’Π°ΠΌ, Π³Π΄Π΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ΅ ΠΏΠ»Π΅ΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ°ΠΊΡΠΎΡΠΎΠΌ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΠ΄Π΅Π»ΠΊΠΈ, Π»ΡΠΌΠ±Π΄Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΌΠ΅ΡΠΎΠΉ.
ΠΠΎΠ»Π½ΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Ξ» Β«=Β» β Π‘ / Π‘ β Π‘ / Π‘ Β«=Β» Π‘ Π‘ β Π‘ β Π‘ Β«=Β» β ΠΏ Π‘ β ΠΏ Π‘ Π³Π΄Π΅: Π‘ Β«=Β» Π¦Π΅Π½Π° ΠΎΠΏΡΠΈΠΈ Π‘ Β«=Β» Π¦Π΅Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ΅Π½Π½ΠΎΠΉ Π±ΡΠΌΠ°Π³ΠΈ β Β«=Β» ΠΠ·ΠΌΠ΅Π½ΡΡΡ \begin{align}&\lambda=\frac{\partial C/C}{\partial S/S}=\frac{S}{C}\frac{\partial C}{\partial S}=\frac{ \partial \text{ ln }C}{\partial \text{ ln }S}\\&\textbf{Π³Π΄Π΅:}\\&C=\text{Π¦Π΅Π½Π° ΠΎΠΏΡΠΈΠΎΠ½Π°}\\&S=\text{Π¦Π΅Π½Π° Π±Π°Π·ΠΎΠ²Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ}\\&\partial=\text{ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ}\end{Π²ΡΡΠΎΠ²Π½Π΅Π½ΠΎ} βΞ»=βS/SβC/Cβ=CSββSβCβ=β ln Sβ ln C, Π³Π΄Π΅:C=Π¦Π΅Π½Π° ΠΎΠΏΡΠΈΠΎΠ½Π°S=Π¦Π΅Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ΅Π½Π½ΠΎΠΉ Π±ΡΠΌΠ°Π³ΠΈβ=ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅β
Π£ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠ°ΡΡΠ΅Ρ Π»ΡΠΌΠ±Π΄Ρ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅Π»ΡΡΡ, ΡΠΌΠ½ΠΎΠΆΠ΅Π½Π½ΠΎΠΌΡ Π½Π° ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π½Ρ Π°ΠΊΡΠΈΠΈ ΠΊ ΡΠ΅Π½Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°. ΠΠ΅Π»ΡΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
Π³ΡΠ΅ΡΠ΅ΡΠΊΠΈΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΠΌΠΌΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅Π½Ρ ΠΎΠΏΡΠΈΠΎΠ½Π°, Π΅ΡΠ»ΠΈ ΡΠ΅Π½Π° Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°ΠΊΡΠΈΠ²Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΠ»Π»Π°Ρ.
ΠΡΠΌΠ±Π΄Π° Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ
ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ Π΄ΠΎΠ»Ρ Π°ΠΊΡΠΈΠΉ ΡΠΎΡΠ³ΡΠ΅ΡΡΡ ΠΏΠΎ 100 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ², Π° ΠΎΠΏΡΠΈΠΎΠ½ ΠΊΠΎΠ»Π» Β«ΠΏΡΠΈ Π΄Π΅Π½ΡΠ³Π°Ρ Β» Ρ ΡΠ΅Π½ΠΎΠΉ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ 100 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² ΡΠΎΡΠ³ΡΠ΅ΡΡΡ ΠΏΠΎ 2,10 Π΄ΠΎΠ»Π»Π°ΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ Π΄Π΅Π»ΡΡΠ°-ΠΎΡΠ΅Π½ΠΊΠ° ΡΠ°Π²Π½Π° 0,58, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ:
Π»ΡΠΌΠ±Π΄Π° Β«=Β» 0,58 Γ ( 100 2.10 ) Β«=Β» 27,62 \text{Lambda}=0,58\times\left(\frac{100}{2,10}\right)=27,62 ΠΡΠΌΠ±Π΄Π° = 0,58 Γ (2,10100β) = 27,62
ΠΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΡΠ°Π²Π½ΠΈΠΌΠΎΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ΅ ΠΏΠ»Π΅ΡΠΎ ΠΎΠΏΡΠΈΠΎΠ½Π° ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π°ΠΊΡΠΈΠ΅ΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π°ΠΊΡΠΈΠΉ Π½Π° 1% ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠΎΠΉ ΠΆΠ΅ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΎΠΏΡΠΈΠΎΠ½Π° Π² Π΄ΠΎΠ»Π»Π°ΡΠ°Ρ Π½Π° 27,62%.
ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ Ρ Π΄ΠΎΠ»Π΅ΠΉ Π² 1000 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΡΡΠΎΠΉ 100-Π΄ΠΎΠ»Π»Π°ΡΠΎΠ²ΠΎΠΉ Π°ΠΊΡΠΈΠΈ. Π’ΡΠ΅ΠΉΠ΄Π΅Ρ Π²Π»Π°Π΄Π΅Π΅Ρ 10 Π°ΠΊΡΠΈΡΠΌΠΈ, ΠΈ Π΅ΡΠ»ΠΈ Π°ΠΊΡΠΈΠΈ Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ°ΡΡΡΡ Π½Π° 1% (ΡΠΎ 100 Π΄ΠΎ 101 Π΄ΠΎΠ»Π»Π°ΡΠ° Π·Π° Π°ΠΊΡΠΈΡ), ΡΡΠΎΠΈΠΌΠΎΡΡΡ Π΄ΠΎΠ»ΠΈ ΡΡΠ΅ΠΉΠ΄Π΅ΡΠ° ΡΠ²Π΅Π»ΠΈΡΠΈΡΡΡ Π½Π° 10 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π΄ΠΎ 1010 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ². ΠΠΎ Π΅ΡΠ»ΠΈ Ρ ΡΡΠ΅ΠΉΠ΄Π΅ΡΠ° Π±ΡΠ»Π° Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Π°Ρ Π΄ΠΎΠ»Ρ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ΅ 1050 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π² ΠΎΠΏΡΠΈΠΎΠ½Π΅ (ΠΏΡΡΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΎΠ² ΠΏΠΎ 2,10 Π΄ΠΎΠ»Π»Π°ΡΠ°), ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΡΡΠΎΠΉ ΡΡΠ°Π²ΠΊΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠΌ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΎΠΏΡΠΈΠΎΠ½Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΡΡ Ρ 2,10 Π΄ΠΎ 2,68 Π΄ΠΎΠ»Π»Π°ΡΠ° (Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅Π»ΡΡΡ), ΡΠΎΠ³Π΄Π° ΡΡΠΎΠΈΠΌΠΎΡΡΡ 1050 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ², ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ
Π² ΡΡΠΈΡ
ΠΏΡΡΠΈ ΠΎΠΏΡΠΈΠΎΠ½Π½ΡΡ
ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°Ρ
, Π²ΡΡΠ°ΡΡΠ΅Ρ Π΄ΠΎ 1340 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ², Ρ. Π΅. Π½Π° 27,62%.
ΠΡΠΌΠ±Π΄Π° ΠΈ Π²ΠΎΠ»Π°ΡΠΈΠ»ΡΠ½ΠΎΡΡΡ
Π Π½Π°ΡΡΠ½ΡΡ ΡΡΠ°ΡΡΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π»ΡΠΌΠ±Π΄Π° ΠΈ Π²Π΅Π³Π° ΠΏΡΠΈΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ. ΠΡΡΠ°Π½ΠΈΡΠ°, ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΡΡΠΈΠΌ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ ΡΠ°ΡΡΠ΅ΡΡ ΠΈΡ ΡΠΎΡΠΌΡΠ» ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ, Π½ΠΎ ΡΡΠΎ Π½Π΅Π²Π΅ΡΠ½ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΠΌΠΎΠΉ Π²ΠΎΠ»Π°ΡΠΈΠ»ΡΠ½ΠΎΡΡΠΈ Π½Π° ΡΠ΅Π½Ρ ΠΎΠΏΡΠΈΠΎΠ½ΠΎΠ² ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΡΡΡ Π²Π΅Π³Π°, ΠΈ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ΠΎΡΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π΄Π΅Π»ΡΡΡ, Π»ΡΠΌΠ±Π΄Π° ΠΈ Π²Π΅Π³Π° ΡΠ°ΡΡΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅Π½.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΡ Π±ΡΡΡ Π²ΡΡΠ΅, ΡΠ΅ΠΌ Π΄Π°Π»ΡΡΠ΅ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π΄Π°ΡΠ° ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠΏΡΠΈΠΎΠ½Π°, ΠΈ ΠΏΠ°Π΄Π°Π΅Ρ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΡ Π΄Π°ΡΡ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΡΠΎ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π²Π΅ΡΠ½ΠΎ ΠΈ Π΄Π»Ρ Π²Π΅Π³ΠΈ. ΠΡΠΌΠ±Π΄Π° ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΠΎΠ»Π΅Π±Π°Π½ΠΈΡ ΡΠ΅Π½Ρ ΠΈΠ»ΠΈ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½Π°Ρ Π²ΠΎΠ»Π°ΡΠΈΠ»ΡΠ½ΠΎΡΡΡ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π°ΠΊΡΠΈΠ²Π°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² ΡΠ΅Π½Π΅ ΠΎΠΏΡΠΈΠΎΠ½ΠΎΠ². ΠΡΠ»ΠΈ ΡΠ΅Π½Π° ΠΎΠΏΡΠΈΠΎΠ½Π° Π΄Π²ΠΈΠΆΠ΅ΡΡΡ Π²Π²Π΅ΡΡ
ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΡΡΠ° Π²ΠΎΠ»Π°ΡΠΈΠ»ΡΠ½ΠΎΡΡΠΈ, ΡΠΎ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠ°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΎΠΏΡΠΈΠΎΠ½ΠΎΠ² ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π΅ΡΠ°.
Π£ΡΠ΅Π±Π½ΠΎΠ΅ ΠΏΠΎΡΠΎΠ±ΠΈΠ΅: Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² Python
9 ΠΌΠ°ΡΡΠ° 2022 Π³.
Π ΡΡΠΎΠΌ ΡΡΠ΅Π±Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠ±ΠΈΠΈ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² Python ΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² Python?
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ β ΡΡΠΎ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ (Ρ. Π΅. ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½Π°Ρ Π±Π΅Π· ΠΈΠΌΠ΅Π½ΠΈ), ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
ΠΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² Python ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
Π»ΡΠΌΠ±Π΄Π°-ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ: Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
Π‘ΡΡΡΠΊΡΡΡΠ° Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°:
- ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ
lambda
β Π°Π½Π°Π»ΠΎΠ³def
Π² ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡΡ - ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½Π½ΡΡ
ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΡ
Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²
, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ - Π’Π΅Π»ΠΎ β Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π·Π°Π΄Π°Π½Π½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΠΌΡΡ
Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΌΡ Π½Π΅ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ. ΠΡΠ»ΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌ ΠΈΡ
ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ.
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΎΡΠ΅Π½ΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ (Π² ΠΈΠ΄Π΅Π°Π»Π΅, ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΠΎΠ³ΠΎ) ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΡ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ·ΠΆΠ΅. ΠΠ±ΡΡΠ½ΠΎ ΠΌΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° (ΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²), ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Python, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΈΠ»ΡΡΡ()
, ΠΊΠ°ΡΡΠ°()
ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ()
.
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π² Python
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ:
Π»ΡΠΌΠ±Π΄Π° Ρ : Ρ + 1
<ΡΡΠ½ΠΊΡΠΈΡ __main__.<Π»ΡΠΌΠ±Π΄Π°>(x)>
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ Π½Π° 1 ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Ρ def
ΠΈ , Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΌΠΈ
ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΠ»ΠΎΠ²:
ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ increment_by_one(x): Π²Π΅ΡΠ½ΡΡΡ Ρ + 1
ΠΠ΄Π½Π°ΠΊΠΎ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΡΠ° Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ lambda x: x + 1
ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ. ΠΡ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΡΡΠΎΠ³ΠΎ: ΠΌΡ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°) Π΅Π³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ
x
. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° Π½Π°Π·Π½Π°ΡΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π΄ΠΈΠΌ Π΅Π΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π½Π° ΡΡΠΎΡ ΡΠ°Π·:
Π° = 2 ΠΏΠ΅ΡΠ°ΡΡ (Π»ΡΠΌΠ±Π΄Π° Ρ : Π° + 1)
<ΡΡΠ½ΠΊΡΠΈΡ <Π»ΡΠΌΠ±Π΄Π°> ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ 0x00000250CB0A5820>
ΠΠΌΠ΅ΡΡΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° 3
, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΎΠΆΠΈΠ΄Π°ΡΡ, Π½Π°ΡΠ° Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π²Π΅ΡΠ½ΡΠ»Π° ΡΠ°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π΅Π³ΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠ·ΠΎΠ²Π° Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ. Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π΅Π΅ ΠΈ Π²Π΅ΡΠ½ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
(Π»ΡΠΌΠ±Π΄Π° Ρ : Ρ + 1)(2)
3
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ρ ΠΎΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π°ΡΠ΅ΠΉ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ Π² ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ, ΠΏΡΠΈ Π΅Π³ΠΎ Π²ΡΠ·ΠΎΠ²Π΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ Π²ΠΎΠΊΡΡΠ³ Π²ΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ Π²ΠΎΠΊΡΡΠ³ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΅ΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°.
ΠΡΠ΅ ΠΎΠ΄Π½Π° Π²Π΅ΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΊΠΎΠ΄Π΅, ΡΡΠΎ ΡΠΎ, ΡΡΠΎ Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π²ΡΠ·Π²Π°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (ΠΈΠ»ΠΈ IIFE ).
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΠΎΠ³Π΄Π° ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΡΠ°ΠΊΡΡ ββΠ»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ, ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈ ΡΠΎΠΆΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌ ΠΈΡ Π·Π°ΠΏΡΡΠΎΠΉ:
(Π»ΡΠΌΠ±Π΄Π° x, y, z: x + y + z)(3, 8, 1)
12
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ»ΠΎΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π»ΡΠΌΠ±Π΄Π°-Π°Π½Π°Π»ΠΎΠ³ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ if-else :
print((Π»ΡΠΌΠ±Π΄Π° x: x Π΅ΡΠ»ΠΈ(x > 10) else 10)(5))
print((Π»ΡΠΌΠ±Π΄Π° x: x Π΅ΡΠ»ΠΈ(x > 10) else 10)(12))
10 12
ΠΡΠ»ΠΈ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ( if-elif-β¦-else ), ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡ Π²Π»ΠΎΠΆΠΈΡΡ Π΄ΡΡΠ³ Π² Π΄ΡΡΠ³Π°:
(Π»ΡΠΌΠ±Π΄Π° x: x * 10, Π΅ΡΠ»ΠΈ x > 10 ΠΈΠ½Π°ΡΠ΅ (x * 5, Π΅ΡΠ»ΠΈ x < 5, ΠΈΠ½Π°ΡΠ΅ x))(11)
110
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΡΡΠΈΠΌ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΎΠΌ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠΆΠ΅ Ρ ΠΎΠ΄Π½ΠΈΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΡΡΠ΄Π½ΡΠΌ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΡΡ Π²ΡΡΠ΅. Π ΡΠ°ΠΊΠΈΡ
ΡΠΈΡΡΠ°ΡΠΈΡΡ
ΠΎΠ±ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Ρ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΡΠ»ΠΎΠ²ΠΈΠΉ if-elif-β¦-else Π±ΡΠ΄Π΅Ρ Π»ΡΡΡΠΈΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ, ΡΠ΅ΠΌ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ. ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ check_conditions(x): Π΅ΡΠ»ΠΈ Ρ > 10: Π²Π΅ΡΠ½ΡΡΡ Ρ * 10 ΠΠ»ΠΈΡ Ρ < 5: Π²Π΅ΡΠ½ΡΡΡ Ρ * 5 Π΅ΡΠ΅: Π²Π΅ΡΠ½ΡΡΡ Ρ check_conditions(11)
110
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΡΠΎΠΊ, ΡΠ΅ΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ, Π΅Π΅ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³ΡΠ΅ ΡΠΈΡΠ°ΡΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ·Π²Π°ΡΡ ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ:
ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅ = Π»ΡΠΌΠ±Π΄Π° Ρ : Ρ + 1 ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅(2)
3
ΠΠ΄Π½Π°ΠΊΠΎ, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ ΠΏΠΎ ΡΡΠΈΠ»Ρ PEP 8 Π΄Π»Ρ ΠΊΠΎΠ΄Π° Python, ΡΡΠΎ ΠΏΠ»ΠΎΡ Π°Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ ΡΡΡΡΠ°Π½ΡΠ΅Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π»ΡΠΌΠ±Π΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠ²Π½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ def (Ρ.
Π΅. Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠΎΠΈΡΡ Π² Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅).
ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ Π½Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π½Π°ΠΌ Π»ΡΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΡΡ ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ.
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² Python
ΠΡΠΌΠ±Π΄Π° Ρ ΡΠΈΠ»ΡΡΡΠΎΠΌ
()
Π€ΡΠ½ΠΊΡΠΈΡ ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ filter()
Π² Python Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ·
ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΡ
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΠΈΡΠΊΠΎΠ², Π½Π°Π±ΠΎΡΠΎΠ², ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ, ΡΠ΅ΡΠΈΠΉ ΠΈ Ρ. Π΄.) Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π²
. ΠΠ½ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°:
- Π€ΡΠ½ΠΊΡΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ°Ρ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ
- ΠΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠ»ΡΡΡΠ°:
Π»ΡΡ = [33, 3, 22, 2, 11, 1] ΡΠΈΠ»ΡΡΡ(Π»ΡΠΌΠ±Π΄Π° Ρ : Ρ > 10, Π»ΡΡ)
<ΡΠΈΠ»ΡΡΡ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ 0x250cb090520>
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΈΠ»ΡΡΡΠ° ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈΠ· ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΈΠ»ΡΡΡΠ° Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Python: list()
, tuple()
, set()
, frostset()
ΠΈΠ»ΠΈ sorted()
(ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ).
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΎΡΡΠΈΠ»ΡΡΡΡΠ΅ΠΌ ΡΠΏΠΈΡΠΎΠΊ ΡΠΈΡΠ΅Π», Π²ΡΠ±ΡΠ°Π² ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΠ»Π° Π±ΠΎΠ»ΡΡΠ΅ 10, ΠΈ Π²Π΅ΡΠ½Π΅ΠΌ ΡΠΏΠΈΡΠΎΠΊ, ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ:
Π»ΡΡ = [33, 3, 22, 2, 11, 1] ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΎ (ΡΠΈΠ»ΡΡΡ (Π»ΡΠΌΠ±Π΄Π° x: x > 10, lst))
[11, 22, 33]
ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΈΠΏΠ°, ΡΡΠΎ ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ:
Π»ΡΡ = [33, 3, 22, 2, 11, 1] tpl = ΠΊΠΎΡΡΠ΅ΠΆ (ΡΠΈΠ»ΡΡΡ (Π»ΡΠΌΠ±Π΄Π° x: x > 10, lst)) ΡΠΏΠ»
(33, 22, 11)
ΠΡΠΌΠ±Π΄Π° Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
map()
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ map()
Π² Python Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Π½ filter()
: ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ. Π€ΡΠ½ΠΊΡΠΈΡ map()
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ°ΡΡΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½ΠΎΠ²ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π² ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Python: ΡΠΏΠΈΡΠΎΠΊ()
, ΠΊΠΎΡΡΠ΅ΠΆ()
, set()
, Π·Π°ΠΌΠΎΡΠΎΠΆΠ΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ()
ΠΈΠ»ΠΈ sorted()
.
ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ filter()
, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΎΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ, ΠΈΠ· ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ°ΡΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π΅Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ map()
Π΄Π»Ρ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΡΠΏΠΈΡΠΊΠ΅ Π½Π° 10 ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΡΡΠ΅ΠΆΠ°, Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ tpl
:
Π»ΡΡ = [1, 2, 3, 4, 5] ΠΏΠ΅ΡΠ°ΡΡ (ΠΊΠ°ΡΡΠ° (Π»ΡΠΌΠ±Π΄Π° x: x * 10, lst)) tpl = ΠΊΠΎΡΡΠ΅ΠΆ (ΠΊΠ°ΡΡΠ° (Π»ΡΠΌΠ±Π΄Π° x: x * 10, lst)) ΡΠΏΠ»
<ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ°ΡΡΡ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ 0x00000250CB0D5F40> (10, 20, 30, 40, 50)
ΠΠ΄Π½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ map()
ΠΈ filter()
Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΡΠΎΠΉ ΠΆΠ΅ Π΄Π»ΠΈΠ½Ρ, ΡΡΠΎ ΠΈ ΠΈΡΡ
ΠΎΠ΄Π½Π°Ρ . ΠΡΠ°ΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ΅ΡΠΈΠΈ pandas ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΌΠΈ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ map()
ΠΊ ΡΡΠΎΠ»Π±ΡΡ DataFrame, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ:
ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ°Π½Π΄ ΠΊΠ°ΠΊ pd df = pd.DataFrame({'col1': [1, 2, 3, 4, 5], 'col2': [0, 0, 0, 0, 0]}) ΠΏΠ΅ΡΠ°ΡΡ (Π΄Ρ) df['col3'] = df['col1'].map(Π»ΡΠΌΠ±Π΄Π° x: x * 10) Π΄Ρ
ΡΡΠΎΠ»Π±Π΅Ρ 1 ΡΡΠΎΠ»Π±Π΅Ρ 2 0 1 0 1 2 0 2 3 0 3 4 0 4 5 0 ΡΡΠΎΠ»Π±Π΅Ρ1 ΡΡΠΎΠ»Π±Π΅Ρ2 ΡΡΠΎΠ»Π±Π΅Ρ3 0 1 0 10 1 2 0 20 2 3 0 30 3 4 0 40 4 5 0 50
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΡΠ»ΡΡΠ°Π΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ apply()
:
df['col3'] = df['col1'].apply(Π»ΡΠΌΠ±Π΄Π° x: x * 10) Π΄Ρ
ΡΡΠΎΠ»Π±Π΅Ρ 1 ΡΡΠΎΠ»Π±Π΅Ρ 2 ΡΡΠΎΠ»Π±Π΅Ρ 3 0 1 0 10 1 2 0 20 2 3 0 30 3 4 0 40 4 5 0 50
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ DataFrame Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΡΠ»ΠΎΠ²ΠΈΠΉ Π΄Π»Ρ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°. ΠΡΠ΅ ΡΠ°Π·, Π΄Π»Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠ΄Π° ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ map()
ΠΈΠ»ΠΈ apply()
Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎ:
df['col4'] = df['col3'].map(Π»ΡΠΌΠ±Π΄Π° x: 30, Π΅ΡΠ»ΠΈ x < 30, ΠΈΠ½Π°ΡΠ΅ x) Π΄Ρ
col1 col2 col3 col4 0 1 0 10 30 1 2 0 20 30 2 3 0 30 30 3 4 0 40 40 4 5 0 50 50
ΠΡΠΌΠ±Π΄Π° Ρ
ΡΠΌΠ΅Π½ΡΡΠΈΡΡ()
Π€ΡΠ½ΠΊΡΠΈΡ Π€ΡΠ½ΠΊΡΠΈΡ reduce()
ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ functools Python ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ Π΄Π²ΡΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
- Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π°Π΄ ΠΏΠ°ΡΠ°ΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ
ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ ΠΆΠ΅ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°, ΡΡΠΎ ΠΈ Π΄Π²Π΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ: ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΠ΄Π½Π°ΠΊΠΎ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ
ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈ ΠΎΠ½Π° Π½Π°ΠΏΡΡΠΌΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠ΅Π΅ ΡΠΊΠ°Π»ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
ΠΈΠ· functools ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π»ΡΡ = [1, 2, 3, 4, 5] ΡΠΌΠ΅Π½ΡΡΠΈΡΡ (Π»ΡΠΌΠ±Π΄Π° x, y: x + y, lst)
15
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ reduce()
Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΅Π΅ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΡΠΌΠΌΡ ΡΠΏΠΈΡΠΊΠ° (Ρ
ΠΎΡΡ Π΄Π»Ρ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΌΡ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π»ΡΡΡΠ΅Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅: sum(lst)
).
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ reduce()
Π²ΡΠ΅Π³Π΄Π° ΡΡΠ΅Π±ΡΠ΅Ρ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΎΠ²Π½ΠΎ Ρ Π΄Π²ΡΠΌΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ ΠΈΠ· functools ΠΠΎΠ΄ΡΠ»Ρ Python.
ΠΠ»ΡΡΡ ΠΈ ΠΌΠΈΠ½ΡΡΡ Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΠΈ Π² Python
ΠΠ»ΡΡΡ
- ΠΡΠΎ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅
ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²ΡΡΠΈΡΠ»ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. - ΠΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.
- ΠΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ΅Π½ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
.