π Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ Π°Ρ Π² Python: ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ Π·Π°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½?
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ Π°Ρ Π² Python - ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΡΠ·ΡΠΊΠ°, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ°ΡΠΊΠΈΠΌ, ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ, ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ.
ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄ ΠΏΡΠΎΡΠ΅ ΠΈ Π±ΡΡΡΡΠ΅Π΅, ΠΈΠ·Π±Π΅Π³Π°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π»ΠΈΠ½Π½ΡΡ ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΡΠ·ΡΠΊΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°Ρ Π°ΡΠ° Π² Python - ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² ΡΠΏΠΈΡΠΊΠΎΠ²:
numbers = [x for x in range(1, 10)]
ΠΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΊΠ»Π° for ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°, Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠΏΠΈΡΠΊΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΏΠΈΡΠΊΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎ.
ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ - ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° "ΡΠ°Π·Π²ΠΎΡΠΎΡΠ°" (unpacking) Π΄Π»Ρ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ:
a, b, c = 1, 2, 3
ΠΠΌΠ΅ΡΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ.
Π’Π°ΠΊΠΈΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Π΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ, ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΡΠΌ, ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ ΠΏΠΈΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄.
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ Π°Ρ Π² Python - ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΈ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΊΠΎΠ΄, Π΄Π΅Π»Π°Ρ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ "ΡΠ»Π°Π΄ΠΊΠΈΠΌ" ΠΈ ΠΏΡΠΈΡΡΠ½ΡΠΌ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΡΠΎΡΠ°ΡΡ ΠΈ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΈΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°Ρ Π°ΡΠ° Π² Python:
1. Π‘ΠΏΠΈΡΠΊΠΎΠ²ΠΎΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅:
Π‘ΠΏΠΈΡΠΊΠΎΠ²ΠΎΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ - ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΡΠΊΠΈ ΠΊΠΎΠ΄Π°, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
numbers = [1, 2, 3, 4, 5]
squared_numbers = [x**2 for x in numbers]
print(squared_numbers) # Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: [1, 4, 9, 16, 25]
2. ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ:
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ - ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π²ΠΈΠ΄ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ. ΠΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ "yield" Π²ΠΌΠ΅ΡΡΠΎ "return", ΡΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΡΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
def countdown(n):
while n > 0:
yield n
n -= 1
for i in countdown(5):
print(i) # Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: 5, 4, 3, 2, 1
3. ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ:
ΠΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ - ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ± Π·Π°Π΄Π°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΌ ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΌ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
def greet(name="ΠΠΈΡ"):
print("ΠΡΠΈΠ²Π΅Ρ, " + name + "!")
greet() # Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ΠΡΠΈΠ²Π΅Ρ, ΠΠΈΡ!
greet("ΠΠ»ΠΈΡΠ°") # Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ΠΡΠΈΠ²Π΅Ρ, ΠΠ»ΠΈΡΠ°!
4. ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ:
ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ - ΡΡΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅. ΠΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° "with" ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
with open("file.txt", "r") as file:
contents = file.read()
print(contents) # Π Π΅Π·ΡΠ»ΡΡΠ°Ρ: ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°.txt
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Ρ Π°Ρ Π² Python Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ, ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΌ ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΌ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ. ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΈ ΡΡΠΈΠ»ΠΈΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½Π΅ ΡΠ½ΠΈΠΆΠ°Ρ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°Ρ Π°ΡΠ°, ΠΊΠΎΠ΄ Π½Π° Python ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².