π Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PEP Π² Python ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ: ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ PEP Π² Python?
PEP (Python Enhancement Proposal) ΠΈΠ»ΠΈ ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Python - ΡΡΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ·ΡΠΊΠ° Python. PEPΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠΈΡΠΎΠ½Π°, ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΎΠ½ΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΠ°ΡΡΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Python. PEPΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ° Python, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΌΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΈ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Π΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ.
ΠΡΠΈΠΌΠ΅ΡΡ PEP
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² PEPΠΎΠ², ΡΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π²ΡΠ³Π»ΡΠ΄ΡΡ:
PEP 8 - Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Python
PEP 20 - Zen of Python
PEP 257 - ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ
ΠΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° PEPΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠ΅ΡΠΈΡΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Python PEP, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ PEPΠ΅.
PEPΡ ΠΈΠ³ΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ Python. ΠΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ ΠΏΠΎΠ½ΡΡΡ Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° ΡΠ·ΡΠΊΠ΅ Python.
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
PEP Π² Python: Π§ΡΠΎ ΡΡΠΎ ΠΈ Π·Π°ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ?
PEP (Python Enhancement Proposals - ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Python) - ΡΡΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π½ΠΎΠ²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python. PEP-Ρ ΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Python ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ·ΡΠΊΠ΅.
PEP-Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Python Π½Π° ΡΠ°ΠΉΡΠ΅ Python.org. ΠΠ½ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Ρ Ρ ΡΠ΅Π»ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π±ΡΠ΄ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ°Ρ Π² ΡΠ·ΡΠΊΠ΅ Python.
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ½Ρ PEP-Ρ?
PEP-Ρ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π² ΡΠ°Π·Π²ΠΈΡΠΈΠΈ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΈ Python. ΠΠ½ΠΈ ΡΠ»ΡΠΆΠ°Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠΌ Π΄Π»Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ Π² ΡΠ·ΡΠΊΠ΅. ΠΠ°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΡΠ½Π΅ΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΡ Π²Π½Π΅Π΄ΡΡΡΡ Π² ΡΠ·ΡΠΊ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²Π΅ΡΡΠΈΡΡ .
PEP-Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ½ΠΎΡΡΡ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΡ Π² ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Python. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ΅ PEP-ΠΎΠ², ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Python ΠΌΠΎΠ³ΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ³Π»Π°ΡΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ.
ΠΡΠΈΠΌΠ΅ΡΡ PEP-ΠΎΠ²
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² PEP-ΠΎΠ², ΡΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
PEP 8: Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Python
PEP 8 ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π½Π° Python. ΠΠ½ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΡ ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ, ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΠΌΠΏΠΎΡΡΡ ΠΊΠΎΠ΄Π° ΠΈ Π΄ΡΡΠ³ΠΈΠΌ Π°ΡΠΏΠ΅ΠΊΡΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΈΡΡΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ PEP 8 ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ.
# ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
PEP 8 ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΉ
def calculate_average(numbers):
"""
ΠΡΡΠΈΡΠ»ΡΠ΅Ρ ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° ΡΠΈΡΠ΅Π».
"""
total = 0
count = 0
for num in numbers:
total += num
count += 1
average = total / count
return average
PEP 20: ΠΠ΅Π½ ΠΠΈΡΠΎΠ½Π°
PEP 20, ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ "ΠΠ΅Π½ ΠΠΈΡΠΎΠ½Π°", ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΠΈ Python. ΠΠ½ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄ Π½Π° Python ΠΊΡΠ°ΡΠΈΠ²ΡΠΌ, ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ ΠΈ Π»Π΅Π³ΠΊΠΈΠΌ Π΄Π»Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ.
# ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ° ΠΠ΅Π½Π° ΠΠΈΡΠΎΠ½Π°: Π§ΠΈΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
numbers = [1, 2, 3, 4, 5]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers)
# ΠΡΠ²ΠΎΠ΄: [2, 4]
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
PEP-Ρ - ΡΡΠΎ Π²Π°ΠΆΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Python. ΠΠ½ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ, ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ² Π² Python. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ PEP-ΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ PEP 8 ΠΈ PEP 20, ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΏΠΈΡΠ°ΡΡ ΡΠΈΡΡΡΠΉ, ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΈ ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ½ΡΠΉ ΠΊΠΎΠ΄. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° Π½ΠΎΠ²ΡΠΌΠΈ PEP-Π°ΠΌΠΈ ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΡΡΠΎΠ±Ρ Π΄Π΅Π»Π°ΡΡ Python ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΅ΡΠ΅ Π»ΡΡΡΠ΅!