enumerate()
Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠΈΠΊΠ»Π°Ρ Π²ΠΌΠ΅ΡΡΠΎ range(len(...)).
fruits = ["ΡΠ±Π»ΠΎΠΊΠΎ", "Π±Π°Π½Π°Π½", "Π³ΡΡΡΠ°"]
for i, fruit in enumerate(fruits, start=1):
print(i, fruit)
1 ΡΠ±Π»ΠΎΠΊΠΎ
2 Π±Π°Π½Π°Π½
3 Π³ΡΡΡΠ°
π ΠΠΎΠ΄ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠΈΡΠ΅ ΠΈ ΡΠΈΡΠ°Π΅ΠΌΠ΅Π΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ ΡΠΎ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ ΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ
Please open Telegram to view this post
VIEW IN TELEGRAM
Π Python ΠΎΠ±ΡΠ΅ΠΊΡΡ Π΄Π΅Π»ΡΡΡΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ (mutable) ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ (immutable).
ΠΡΠΎ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½Ρ β ΠΎΡ Π½Π΅Π³ΠΎ Π·Π°Π²ΠΈΡΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠΎΠ², ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Ρ Β«ΠΊΠΎΠΏΠΈΡΠΌΠΈΒ»
a = [1, 2, 3]
b = a
b.append(4)
print(a) # [1, 2, 3, 4]
print(a is b) # True
b
Π½Π΅ ΠΊΠΎΠΏΠΈΡ, Π° ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΡΠΈΠΏΡ (list
, dict
, set
) Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ. Π Π²ΠΎΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ (int
, str
, tuple
) ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ.π ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΡΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΠΈ β ΠΊΠ»ΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π½Π΅ Π»ΠΎΠΌΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Β«ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅Β» ΠΈ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄
Please open Telegram to view this post
VIEW IN TELEGRAM
Π Python ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ β ΡΡΠΎ Π½Π΅ βΠΊΠΎΡΠΎΠ±ΠΊΠΈ Ρ Π΄Π°Π½Π½ΡΠΌΠΈβ, Π° ΠΈΠΌΠ΅Π½Π°, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎΠ³Π΄Π° ΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, Π° ΠΈΠΌΡ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° Π½Π΅Π³ΠΎ.
x = [1, 2, 3]
y = x
y.append(4)
print(x) # [1, 2, 3, 4]
print(x is y) # True
x
ΠΈ y
ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΡΠ°ΠΆΠ°ΡΡΡΡ Π² ΠΎΠ±ΠΎΠΈΡ
. Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΊΠΎΠΏΠΈΡ, Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ copy()
ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ copy
.π Π Python Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ: ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ Π½Π΅ ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅, Π° Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΡΡΠ»ΠΊΡ.
ΠΡΡΡΠ΄Π° ΡΠΎΠΆΠ΄Π°ΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Β«Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΡ Β» Π±Π°Π³ΠΎΠ² Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ²
Please open Telegram to view this post
VIEW IN TELEGRAM
Π Python ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Β«Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡΒ» Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΡΠΆΠ΅ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ.
ΠΡΠΎ ΠΈ Π΅ΡΡΡ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅ β ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΡΡΠΈΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈ Π΄Π°Π½Π½ΡΡ Π±Π΅Π· ΠΊΠ»Π°ΡΡΠΎΠ²
def make_multiplier(factor):
def multiply(x):
return x * factor
return multiply
double = make_multiplier(2)
print(double(5)) # 10
multiply
ΠΏΠΎΠΌΠ½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ factor
, Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ make_multiplier
. Π’ΠΎ Π΅ΡΡΡ double
β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, Π·Π°ΠΌΠΊΠ½ΡΠ²ΡΠ°Ρ Π²Π½ΡΡΡΠΈ ΡΠ΅Π±Ρ factor = 2
.π ΠΠ°ΠΌΡΠΊΠ°Π½ΠΈΡ Π»Π΅ΠΆΠ°Ρ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠΎΠ², ΡΠ°Π±ΡΠΈΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ Π»Π΅Π½ΠΈΠ²ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ β ΡΠ°Π³ ΠΎΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ Python ΠΊ "ΠΏΠΈΡΠΎΠ½ΠΈΡΡΠΎΠΌΡ" ΠΊΠΎΠ΄Ρ
Please open Telegram to view this post
VIEW IN TELEGRAM
ΠΠΎΠ³Π΄Π° ΡΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡΡ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Python ΠΈΡΠ΅Ρ Π΅Ρ Π½Π΅ Ρ Π°ΠΎΡΠΈΡΠ½ΠΎ, Π° ΡΡΡΠΎΠ³ΠΎ ΠΏΠΎ ΡΠ΅ΠΏΠΎΡΠΊΠ΅ LEGB:
Local β Enclosing β Global β Built-in
x = "Π³Π»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ"
def outer():
x = "Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅"
def inner():
x = "Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ"
print(x)
inner()
outer()
Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ
ΠΡΠ»ΠΈ ΡΠ±ΡΠ°ΡΡ
x = "Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ"
, Python Π²ΠΎΠ·ΡΠΌΡΡ x
ΠΈΠ· Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅ΠΉ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ β "Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅"
.ΠΡΠ»ΠΈ ΠΈ ΡΠ°ΠΌ Π½Π΅Ρ β ΠΈΠ· Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ.
π ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ LEGB ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΈΠΌΡΠ½ ΠΈ Π±Π°Π³ΠΎΠ² ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΠΈ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡΠΌΠΈ
Please open Telegram to view this post
VIEW IN TELEGRAM