ΠΠΎΠ΄ΡΠ»Ρ ΡΠΈΡΠ»Π° Π² Python 3 β Π€ΡΠ½ΠΊΡΠΈΡ abs Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ math
ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΡΠ»Π° Π² Python. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΡΠ»Π°, ΠΊΠ°ΠΊΠΈΠ΅ Π΅ΡΡΡ ΡΠΏΠΎΡΠΎΠ±Ρ Π΅Π³ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. Π’Π°ΠΊ ΠΆΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΊΠΎΡΠ½Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ ΡΠΈΡΠ΅Π».
ΠΠΎΠ΄ΡΠ»Ρ ΡΠΈΡΠ»Π°
Π§Π°ΡΡΠΎ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π°. ΠΠ½Π°ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΡΠ±ΡΠΎΡΠΈΡΡ Π·Π½Π°ΠΊ.
ΠΡΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ 3 ΡΠΈΡΡΠ°ΡΠΈΠΈ:
- ΠΠΎΠ³Π΄Π° ΡΠΈΡΠ»ΠΎ Π±ΠΎΠ»ΡΡΠ΅ 0. ΠΡΠ»ΠΈ Π²Π·ΡΡΡ Π΅Π³ΠΎ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ β Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ.
- ΠΠΎΠ΄ΡΠ»Ρ Π½ΡΠ»Ρ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ.
- Π£ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΠΌ Π·Π½Π°ΠΊ. Π’ΠΎ Π΅ΡΡΡ ΡΠΌΠ½ΠΎΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ Π½Π° -1.
ΠΠΎ ΡΡΠΎ Π²ΡΠ΅ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π». Π§Π΅ΠΌΡ ΠΆΠ΅ ΡΠΎΠ³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π΅Π½ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ ?
ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ ΠΈ ΠΌΠ½ΠΈΠΌΠΎΠΉ. ΠΠ΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΠΊΠ°ΠΊ 2 ΠΎΡΡΠΎΠ³ΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΎΡΠΈ: Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈ ΠΌΠ½ΠΈΠΌΡΡ. ΠΡΠΌΠ΅ΡΠ°Π΅ΠΌ Π½Π° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΡΡ ΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ ΡΠΎΡΠΊΡ. ΠΠΎΠ΄ΡΠ»Π΅ΠΌ Π±ΡΠ΄Π΅Ρ Π΄Π»ΠΈΠ½Π° ΠΎΡΡΠ΅Π·ΠΊΠ°, ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½Π°ΡΠ°Π»Π° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ Π² ΡΡΡ ΡΠΎΡΠΊΡ.
ΠΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠ΅ΠΎΡΠ΅ΠΌΡ ΠΠΈΡΠ°Π³ΠΎΡΠ° ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ, ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΡΡΠΎ ΠΊΠΎΡΠ΅Π½Ρ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΉ ΠΈΠ· ΡΡΠΌΠΌΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΎΠ² ΠΌΠ½ΠΈΠΌΠΎΠΉ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠ΅ΠΉ.
ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅
ΠΡΡΠΈΡΠ»ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ abs.
- Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ fabs Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ math.
- ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΠ΅ ΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ Π² Python 2, ΡΠ°ΠΊ ΠΈ Π² Python 3.
abs
ΠΠ»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π² Python ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΡΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ abs. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΈΠΏΠ°, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ» Π°ΡΠ³ΡΠΌΠ΅Π½Ρ.
a = -10 b = abs(a) print(b) print(type(b)) 10 <class 'int'>
fabs
ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ fabs ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ math. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ from math import fabs
.
from math import fabs a = -10 b = fabs(a) print(b) print(type(b)) 10.0 <class 'float'>
ΠΡΠ»ΠΈΡΠΈΠ΅ abs ΠΎΡ fabs Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ abs Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΈΠΏΠ°, ΡΡΠΎ ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ. Π€ΡΠ½ΠΊΡΠΈΡ ΠΆΠ΅ fabs Π²Π½Π°ΡΠ°Π»Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΡΠΈΠΏ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° ΠΊ Π²Π΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΡΠ»Ρ.
Π‘Π²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅
ΠΡΠ»ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΠΈΡΠ»ΠΈΡΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ½Π°ΡΠ½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ.
a = -10 b = a if a > 0 else -a print(b) 10
ΠΠ° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΠ²ΠΎΡ ΡΡΠ½ΠΊΡΠΈΡ.
def my_abs(a): return a if a > 0 else -a print(my_abs(-3)) 3
ΠΠΎΠ΄ΡΠ»Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°
ΠΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ.
Π€ΡΠ½ΠΊΡΠΈΠ΅ΠΉ fabs ΠΌΡ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ. ΠΡΠ»ΠΈ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΎΡΠΈΠ±ΠΊΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌΡ (TypeError).
from math import fabs a = -10-2j b = fabs(a) print(b) Traceback (most recent call last): File "main.py", line 3, in <module> b = fabs(a) TypeError: can't convert complex to float
Π Π²ΠΎΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ abs ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΄Π°Π΅ΡΡΡ.
a = -10-2j b = abs(a) print(b) 10.19803902718557
ΠΠ»ΠΈ ΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠ²ΠΎΡ ΡΡΠ½ΠΊΡΠΈΡ:
from math import sqrt def my_abs_complex(c): return sqrt(c.real**2 + c.imag**2) a = -10-2j b = my_abs_complex(a) print(b) 10.198039027185569
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ. ΠΠΎ Π½Π°ΠΌ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ math Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΡΠ½Ρ.
all-python.ru
ΠΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ Π² Python. ΠΠ»ΡΠ±ΠΎΠΊΠΎΠ΅ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΠ΅
ΠΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ Π² Python β ΡΡΠΎ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΡ ΠΏΠΎΡΡΠ°ΡΠ°Π΅ΠΌΡΡ ΡΠ°ΡΠΊΡΡΡΡ Π²ΡΠ΅ Π²Π°ΠΆΠ½ΡΠ΅, ΠΏΠΎ Π½Π°ΡΠ΅ΠΌΡ ΠΌΠ½Π΅Π½ΠΈΡ, Π°ΡΠΏΠ΅ΠΊΡΡ ΡΡΠΎΠΉ ΡΠ΅ΠΌΡ ΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ Π»ΡΡΡΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ.
Π’Π΅ΠΌΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠΆΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π°Π»Π°ΡΡ Π½Π°ΠΌΠΈ Π² 13-ΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° βPython.Π£ΡΠΎΠΊΠΈβ. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ°ΠΌ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π΅Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Ρ ΡΠ°Π½ΠΈΠΌΡΡ Π² Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . Π§Π°ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡ ΡΠΆΠ΅ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΡΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π ΠΊΠ½ΠΈΠ³Π΅ βΠ‘ΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΡΠΉ ΠΠΎΠ΄β Π‘ΡΠΈΠ² ΠΠ°ΠΊΠΊΠΎΠ½Π½Π΅Π»Π» ΡΠΎΡΠΌΡΠ»ΠΈΡΡΠ΅Ρ Π³Π»Π°Π²Π½ΡΠΉ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠΌΠΏΠ΅ΡΠ°ΡΠΈΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ β ΡΡΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΡ. ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡΡΡ, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΠ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΡΡΠΈΠ»ΠΈΠΉ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π΅ βΠ²ΡΡΠ»Π° ΠΈΠ· Π±Π΅ΡΠ΅Π³ΠΎΠ²β. ΠΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ ΡΡΠΎΠ³ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ΄Π΅ΡΠΆΠ°ΡΡ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Π²ΡΠ΅Ρ ΡΡΠΎΠ²Π½ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ. Π ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌ (Π΄Π° ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΌ) Π²ΡΠ΄Π΅Π»ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΊΠ°ΠΊ
ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΎ Π΄Π°Π»Π΅Π΅, ΠΏΠΎΠ΄ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Python ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΠ°ΠΉΠ» Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ .py, Π° ΠΏΠ°ΠΊΠ΅Ρ β ΡΡΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
ΠΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΡΡΠΈΠ³ΠΎΠ½ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ), ΠΊΠ»Π°ΡΡΡ, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ β Π²ΡΠ΅ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, Π΅ΡΠ»ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠΉ. Π’Π°ΠΊΠΆΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
Π‘Π»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π²Π΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ, ΡΠ°ΠΊ ΠΈ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΠ΅ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈ.
ΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡ
ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. ΠΡΠ»ΠΈ Π²Ρ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΡΡΠΎΡ ΡΠ°Π·Π΄Π΅Π». Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π½Π°ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΡΠ΅ΠΌΡ.
ΠΠΎΠ΄ΡΠ»ΠΈ
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ simplemath.py, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ.
simplemath.py
def add(a, b): return a + b def sub(a, b): return a - b def mul(a, b): return a * b def div(a, b): return a / b
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠ΄ΡΠ»Ρ worker.py, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ· simplemath.py. ΠΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ import Π΄Π»Ρ Π½Π°Ρ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ. ΠΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
worker.py
import simplemath print("\"import\" sample")print(simplemath.add(1, 2)) print(simplemath.sub(1, 2)) print(simplemath.mul(1, 2)) print(simplemath.div(1, 2))
ΠΠΎΠ»ΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
"import" sample 3 -1 2 0.5
ΠΡΠ»ΠΈ ΠΆΠ΅ Π½Π°ΠΌ Π½ΡΠΆΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π»ΡΡΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ from.
worker_from.py
from simplemath import add print("\"from\" sample") print(add(1, 2)) print(sub(1, 2))
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΎΠΉ.
"from" sample 3 Traceback (most recent call last): File "C:/worker_from.py", line 5, in <module> print(sub(1, 2)) NameError: name 'sub' is not defined
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ add() Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΌΠΎΠ΄ΡΠ»Π΅
simplemath. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ Π΅Π΅ Π²ΡΠ·ΡΠ²Π°Π»ΠΈ ΡΠ°ΠΊ simplemath.add(1, 2), ΡΠ΅ΠΏΠ΅ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ: add(1, 2). ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ sub(1, 2) Π·Π°Π²Π΅ΡΡΠΈΠ»ΡΡ Π½Π΅ΡΠ΄Π°ΡΠ΅ΠΉ, Ρ.ΠΊ. ΠΌΡ Π΅Π³ΠΎ Π½Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ.ΠΠ°ΠΊΠ΅ΡΡ
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΠ°ΠΏΠΊΡ mathpack ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅ΠΌ ΡΡΠ΄Π° ΠΌΠΎΠ΄ΡΠ»Ρ simplemath.py. Π’Π΅ΠΏΠ΅ΡΡ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ simplemath Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠ°. ΠΡΠ»ΠΈ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² import simplemath Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠ΅ΡΠΈΠΊΡΠ°, ΡΠΎ ΡΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΌΠ΅ΡΡΠ° Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈΠ· simplemath.
worker_pack.py
import mathpack.simplemath print("\"import\" sample") print(mathpack.simplemath.add(1, 2)) print(mathpack.simplemath.sub(1, 2)) print(mathpack.simplemath.mul(1, 2)) print(mathpack.simplemath.div(1, 2))
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΌ. ΠΠΎΠΆΠ½ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΠΏΠΎΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
from mathpack import simplemath
Π’ΠΎΠ³Π΄Π° Π² ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΌΠ΅Π½ΡΡΡ.
worker_pack_from.py
from mathpack import simplemath print("\"import\" sample") print(simplemath.add(1, 2)) print(simplemath.sub(1, 2)) print(simplemath.mul(1, 2)) print(simplemath.div(1, 2))
ΠΠ° ΡΡΠΎΠΌ Π·Π°ΠΊΠΎΠ½ΡΠΈΠΌ Π½Π°Ρ βΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡβ ΠΈ Π½Π°ΡΠ½Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡ ΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
Π Π°Π±ΠΎΡΠ° ΠΈΠΌΠΏΠΎΡΡΠ° β Π²Π·Π³Π»ΡΠ΄ ΠΈΠ·Π½ΡΡΡΠΈ
Π Π°Π±ΠΎΡΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΡΠΈ ΡΠ°Π³Π°: ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ Π·Π°ΠΏΡΡΠΊ. ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΡΠ°Π³Π° β ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΠΎΠΈΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΈΠΌΠΏΠΎΡΡΠ΅, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Π² ΡΡΠ΄Π΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ, ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΡΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π² ΡΠ°ΠΌΠΊΠ°Ρ Module Search Path. ΠΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
- Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ;
- Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH;
- Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Standard library ;
- ΠΏΡΡΠΈ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² .pth ΡΠ°ΠΉΠ»Π°Ρ ;
- ΠΏΠ°ΠΊΠ΅ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
ΠΠΎΠΌΠ°ΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ β ΡΡΠΎ ΠΌΠ΅ΡΡΠΎ, ΠΎΡΠΊΡΠ΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΊΡΠΈΠΏΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠ»Ρ simplemath.py ΠΈ worker.py ΠΈΠ· ΡΠ°Π·Π΄Π΅Π»Π° βΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡβ Π»Π΅ΠΆΠ°Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ J:\work, ΡΠΎ ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ ΡΠΊΡΠΈΠΏΡΠ° worker.py:
>python j:\work\worker.py
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΡΠΏΠ°ΡΡ J:\work.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH Π·Π°Π΄Π°Π΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ Π»ΡΠ±Π°Ρ Π΄ΡΡΠ³Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π²Π°ΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π² Π½Π΅ΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΡΡΡΡ ΠΏΡΡΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² ΠΈΠΌΠΏΠΎΡΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ simplemath.py, ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ J:\work\sm, ΡΠΎ ΠΏΠΎΠΏΡΡΠΊΠ° Π·Π°ΠΏΡΡΡΠΈΡΡ worker.py Π·Π°Π²Π΅ΡΡΠΈΡΡΡ Π½Π΅ΡΠ΄Π°ΡΠ΅ΠΉ, Ρ.ΠΊ. Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½ ΠΌΠΎΠ΄ΡΠ»Ρ simplemath.py. ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΡΠΈ J:\work\sm Π² PYTHONPATH Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΠ, ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΠ΅Π°Π½Ρ.
ΠΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Python Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° (Standard library), Π²ΠΎΡ Π² Π½Π΅ΠΉ ΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΈ ΠΏΠΎ ΠΏΡΡΡΠΌ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH.
Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΌΠ΅ΡΡΠΎ, Π³Π΄Π΅ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python, Π΅ΡΠ»ΠΈ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Ρ Π΅Π³ΠΎ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ β ΡΡΠΈ ΠΏΡΡΠΈ, ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .pth. ΠΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΏΡΡΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ (ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ). ΠΠ°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Python ΠΈΠ»ΠΈ Π² <python-dir>/lib/site-python. Π ΡΠ°ΠΌΠΊΠ°Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΡ ΡΠ΄Π°Π»ΠΈΠΌ Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH, ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΡΡΡΡ ΡΠ°Π½ΡΡΠ΅ (Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ±ΡΠ°ΡΡ ΠΈΠ· Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΉ Π½Π°ΠΌΠΈ ΠΏΡΡΡ J:\work\sm). ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ C:\Python35-32 ΡΠ°ΠΉΠ» workerpath.pth ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ.
workerpath.pth
j:\work\sm
ΠΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΊΡΠΈΠΏΡ worker.py Π·Π°ΠΏΡΡΡΠΈΠ»ΡΡ ΡΠ΄Π°ΡΠ½ΠΎ.
ΠΡ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π½Π° ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎΠΈΡΠΊ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ lib/site-packages. Π Π½Π΅ΠΉ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΎΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Python.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, Π΅ΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΡΠΉ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠ°ΠΉΠ»ΠΎΠΌ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ (ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ΅). Π Python 3 ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ __pycache__, Π² Π½Π΅ΠΌ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .pyc, Π² Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΠΏΡΠΈ ΡΡΠΎΠΌ, Π΅ΡΠ»ΠΈ Π²Ρ Π΅ΡΠ΅ ΡΠ°Π· Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠ°, ΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½ Π½Π΅ Π±ΡΠ΄Π΅Ρ. ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ imp.reload.
ΠΠΎΠ΄ΡΠ»ΠΈ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
ΠΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΡΠ°Π½Π΅Π΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ β ΡΡΠΎ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .py. ΠΡΠ»ΠΈ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ import, ΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ module.
import module
ΠΡΡΡΡ Π² module ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ value ΠΈ ΡΡΠ½ΠΊΡΠΈΡ calc_value(), ΡΠΎΠ³Π΄Π° Π΄ΠΎΡΡΡΠΏ ΠΊ Π½ΠΈΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊ.
module.value module.calc_value()
Π’Π°ΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠΌΠ΅Π½Π° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΈΠ½Π°ΡΠ΅ ΠΈΡ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ. Π’Π°ΠΊ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°Π·ΠΎΠ²Π΅ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ while.py, ΡΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅Π»ΡΠ·Ρ.
ΠΠ°Π»Π΅Π΅, ΠΊΡΠ°ΡΠΊΠΎ ΠΏΡΠΎΠΉΠ΄Π΅ΠΌΡΡ ΠΏΠΎ ΡΠΎΠΌΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΠ΅ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ simplemath.py.
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ
import simplemath
ΠΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ simplemath Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ Π΄Π°Π»Π΅Π΅, ΡΠ΅ΡΠ΅Π· ΡΠΎΡΠΊΡ, ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠ·ΠΎΠ² add() Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
simplemath.add(1, 2)
ΠΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠΌΠΏΠΎΡΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ
from simplemath import add
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ½ΠΊΡΠΈΡ add() ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Π½Π°ΠΏΡΡΠΌΡΡ, Π±Π΅Π· ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ· simplemath, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ sub(), mul() ΠΈ div() Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ.
Π’ΡΠ΅ΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ±
from simplemath import *
Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ»Π°ΡΡΡ), Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ.
Π§ΡΠΎ Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΏΡΠΎ ΠΈΠΌΠΏΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ?
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ import ΠΈ from β ΡΡΠΎ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠ½ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ°, Π° Π½Π΅ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π³ΠΈΠ±ΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ Ρ.ΠΏ.
Π Π½Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ simplemath.py. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΈΠΌΠ΅ΡΠ΅ΠΌ advmath.py.
advmath.py
def sqrt(value): return value**0.5 def pow(value, magn): return value**magn
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅ ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠ°ΠΊΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±ΡΠ΄ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ.
selectimport.py
val = int(input("simple math lib [1], adv math lib [2]: ")) if val==1: import simplemath print(simplemath.add(1, 2)) elif val==2: import advmath print(advmath.sqrt(4)) else: print("Type only 1 or 2")
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ Π²ΠΎΠΏΡΠΎΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ Π² ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΡ ΠΌΠΎΠ΄ΡΠ»ΡΡ . ΠΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅ΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ import, ΡΠΎ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ-ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ β ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅.
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ vars.py.
vars.py
value = 1 array = [1, 2, 3] def set_value(new_value): value = new_value def get_value(): return value
Π ΡΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π΄Π²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ (value ΠΈ array) ΠΈ Π΄Π²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ (get_value() ΠΈ set_value()), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ value.
ΠΡΠ»ΠΈ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ import, ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ.
ΠΠΎΡΡΡΠΏ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΠΌΠΎΠ΄ΡΠ»Ρ.
>>> import vars >>> vars.value 1 >>> vars.array [1, 2, 3]
ΠΡΠ²ΠΎΠ· ΡΡΠ½ΠΊΡΠΈΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΠΌΠΎΠ΄ΡΠ»Ρ.
>>> vars.get_value() 1 >>> vars.set_value(5) >>> vars.get_value() 5
ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ vars Π½Π°ΠΏΡΡΠΌΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°ΡΡΠΈΠ±ΡΡΡ.
>>> vars.value = 7 >>> vars.value 7 >>> vars.array[2] = 17 >>> vars.array [1, 2, 17]
ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ vars ΡΠ΅ΡΠ΅Π· from, ΡΠΎ ΡΠ°Π±ΠΎΡΠ° Ρ Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΡ. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ value ΠΈ array Π±ΡΠ΄ΡΡ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½Ρ Π² ΡΠ΅ΠΊΡΡΡΡ ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΡΠ΄Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ.
ΠΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ vars ΡΠ΅ΠΏΠ΅ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ.
>>> from vars import * >>> value 1 >>> array [1, 2, 3]
ΠΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ value β ΡΡΠΎ ΡΠΆΠ΅ Π½ΠΎΠ²Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ, Ρ.Π΅. ΠΎΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π²Π½Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ vars.
ΠΡΠ»ΠΈ ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅ΡΠ΅Π· import, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ value Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π½Π΅ Π·Π°ΡΡΠΎΠ½Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ value Π² ΠΌΠΎΠ΄ΡΠ»Π΅ vars. ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ vars ΡΠ΅ΡΠ΅Π· ΠΈΠΌΠΏΠΎΡΡ ΠΈ Π²ΡΠ²Π΅Π΄Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ value Π² Π½Π΅ΠΌ.
>>> import vars >>> vars.value 1
ΠΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ value Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅.
>>> value = 9 >>> value 9 >>> vars.value 1
ΠΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΊΠΎΡΠ½ΡΠ»ΠΎΡΡ value ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ vars. Π’Π΅ΠΏΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ vars.value.
>>> vars.value = 11 >>> vars.value 11 >>> value 9
Π’.Π΅. value ΠΈ vars.value β ΡΡΠΎ Π΄Π²Π΅ ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠ²ΡΠ·Π°Π½Ρ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ. ΠΡΡΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ ΠΌΡΡΠ°Π±Π΅Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ β ΡΡΠΎ array.
>>> array [1, 2, 3] >>> vars.array [1, 2, 3]
ΠΠΎΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ, ΡΠ°ΠΊ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ. ΠΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ array.
>>> array[1] = 23 >>> array [1, 23, 3] >>> vars.array [1, 23, 3]
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ array ΠΈ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ vars. ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΡΠΈΡ ΡΠΏΠΈΡΠΊΠΎΠ² ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎ ΡΠΎΠΌ ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½Ρ ΡΠΈΠΏΡ Π² Python ΡΠΌ. ΡΡΡ (https://devpractice.ru/python-lesson-3-data-model/).
ΠΡΠΎΡ ΡΡΡΠ΅ΠΊΡ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ ΠΈ Π² ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΡΠΎΡΠΎΠ½Ρ.
>>> vars.array[0] = 15 >>> vars.array [15, 23, 3] >>> array [15, 23, 3]
ΠΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ Π΅ΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² Π½ΠΈΡ , ΡΠΎ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ import.
ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ Π²ΡΠ·ΠΎΠ²Π΅ import, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Π½Π΅ΡΡΠΈ Π² Π½Π΅Π³ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ±ΡΠ°ΡΠΈΠΌΡΡ ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π°.
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ vars.
>>> import vars >>> vars.value 1
ΠΠΎΠΌΠ΅Π½ΡΠ΅ΠΌ Π² ΡΠ°ΠΉΠ»Π΅ vars.py ΡΡΡΠΎΠΊΡ value = 1 Π½Π° value = 7.
>>> # Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² vars.py >>> import vars >>> vars.value 1
ΠΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΎΡΡ.
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ reload() ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ imp.
>>> # Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² vars.py >>> import vars >>> vars.value 1 >>> from imp import reload >>> reload(vars) <module 'vars' from 'j:\\work\\vars.py'> >>> vars.value 7
Π Π½Π°ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠΊ, Π²ΡΠ΅ ΡΡΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ½ΠΊΡΠΈΡ dir().
>>> import vars >>> dir(vars) ['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'array', 'get_value', 'set_value', 'value']
ΠΠ°ΠΊΠ΅ΡΡ
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ Π² Python ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΊΠ°ΠΊ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ Π»Π΅ΠΆΠ°Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ (Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²ΡΠ΅ ΡΠ»ΠΎΠΆΠ½Π΅Π΅). ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ°, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² import ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π²Π΅ΡΡ ΠΏΡΡΡ Π΄ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠ°Π·Π΄Π΅Π»ΡΡ ΠΈΡ ΡΠΎΡΠΊΠ°ΠΌΠΈ.
ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ vars.py (ΡΠΌ. ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΡΠ°Π·Π΄Π΅Π») Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ simple, ΡΠΎ ΠΈΠΌΠΏΠΎΡΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
>>> import simple.vars >>> simple.vars.value 7
ΠΡΠΈ ΡΡΠΎΠΌ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ value Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²ΡΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΡΡΠ°Π» ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² Π΅Π³ΠΎ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΠ·ΡΠΊΠ° Python, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π² Π½Π΅Π³ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠ°ΠΉΠ» __init__.py. ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° β ΡΡΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°. Π ΡΠ°ΠΌΠΎΠΌ ΠΏΡΠΎΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ β ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΡΡΡΠΌ.
ΠΡΠ»ΠΈ Π² ΡΠ°ΠΉΠ»Π΅ __init__.py Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΠ΄, ΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠ°.
Π’Π΅ΠΌΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π²ΠΈΡΠ° Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ·Π΄Π½Π΅Π΅!!!
ΠΠ° ΡΡΠΎΠΌ ΠΏΠΎΠΊΠ° Π²ΡΠ΅! Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, Π΅ΡΠ»ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΡΠ° ΡΡΠ°ΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΈΡΡΡΡΡΡ
devpractice.ru
Pythonicway β ΠΠΎΠ΄ΡΠ»ΠΈ Π² Python
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄ Π½Π° Python. ΠΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠΎΠ²ΠΎΡΡ ΠΏΡΠΎΡΡΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ, ΠΌΠΎΠ΄ΡΠ»Ρ Π² Python ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠΎΠ΄ Π½Π° Python. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Python ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄.
ΠΠΎΠΌΠ°Π½Π΄Π° import Π² Python:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ ΠΏΠΈΡΠΎΠ½ΠΎΠ²ΡΠΊΠΈΠΉ ΡΠ°ΠΉΠ» ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Π΄ΡΡΠ³ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² Π² Π½Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ import. ΠΠΎΠΌΠ°Π½Π΄Π° import Π² Python ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ:
import module_1[, module_2[,... module_N]
ΠΠΎΠ³Π΄Π° ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python Π²ΡΡΡΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ import, ΠΎΠ½ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅Ρ (Π΄Π°Π΅Ρ Π΄ΠΎΡΡΡΠΏ) ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΠΏΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° Python. ΠΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° Python ΡΡΠΎ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΠΏΠΎΠΈΡΠΊ ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠΎΠΏΡΡΠΊΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ math ΡΠ»Π΅Π΄ΡΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ:
import math # ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ sqrt ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ math print (math.sqrt(9)) # ΠΠ΅ΡΠ°ΡΠ°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ pi, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π² math print (math.pi)
ΠΠ°ΠΆΠ½ΠΎ Π·Π½Π°ΡΡ, ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π»ΠΈΡΡ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΠΎΠ½ Π±ΡΠ» ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½. ΠΡΠΎ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΊΠ»ΠΈΡΠ½ΠΎΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ.
ΠΠΎΠΌΠ°Π½Π΄Π° from β¦ import Π² Python
ΠΠΎΠΌΠ°Π½Π΄Π° from β¦ import ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ Π²Π΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
# ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ math ΡΡΠ½ΠΊΡΠΈΡ sqrt from math import sqrt # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ sqrt. # ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Π·Π°ΡΠ΅ΠΌ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ print (sqrt(144)) # ΠΠΎ ΠΌΡ ΡΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΎ, ΡΡΠΎ Π½Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ print (pi) # ΠΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ from β¦ import Π½Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅Ρ Π²Π΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ.
ΠΠΎΠΌΠ°Π½Π΄Π° from β¦ import * Π² Python:
Π Python ΡΠ°ΠΊ ΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΡ (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ»Π°ΡΡΡ) Π·Π° ΡΠ°Π· ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ from β¦ import *. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
from math import * # Π’Π΅ΠΏΠ΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ math print (sqrt(121)) print (pi) print (e)
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠ°ΡΡΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅.
ΠΠ΅ΡΡΠΎΠ½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² Python:
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Python ΠΈΡΠ΅Ρ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ :
-
ΠΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠ°ΠΉΠ», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠΌΠΏΠΎΡΡΠ°
-
ΠΡΠ»ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½, Python ΠΈΡΠ΅Ρ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ PYTHONPATH.
-
ΠΡΠ»ΠΈ ΠΈ ΡΠ°ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½, Python ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΏΡΡΡ Π·Π°Π΄Π°Π½Π½ΡΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠΎΡ ΡΠ°Π½Π΅Π½ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ sys Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ path. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ sys.path ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅ ΡΡΠΈ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ ΠΌΠ΅ΡΡΠ° ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Python ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅:
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
help("modules")
Π§Π΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Python:
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Python Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²Π°Ρ ΡΠΊΡΠΈΠΏΡ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .py Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ½ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² Π»ΡΠ±ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄Π²Π° ΡΠ°ΠΉΠ»Π°: module_1.py ΠΈ module_2.py ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΠΌ ΠΈΡ Π² ΠΎΠ΄Π½ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ Π·Π°ΠΏΠΈΡΠ΅ΠΌ:
def hello(): print ("Hello from module_1")
Π Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ Π²ΡΠ·ΠΎΠ²Π΅ΠΌ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ:
from module_1 import hello hello()
ΠΡΠΏΠΎΠ»Π½ΠΈΠ² ΠΊΠΎΠ΄ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΏΠΎΠ»ΡΡΠΈΠΌ:
Hello from module_1
Π€ΡΠ½ΠΊΡΠΈΡ dir():
ΠΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ dir() Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠΎΠΊ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ
Π²ΡΠ΅ ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅.
# Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΌ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π»ΠΈΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
dir()
# ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ math
import math
# ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ math Π² ΡΠΏΠΈΡΠΊΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ
ΠΈΠΌΠ΅Π½
dir()
# ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ math
dir(math)

ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Python:
ΠΠΎΠ΄ Π½Π° Python ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΡΠΎ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° Python.
- ΠΠΎΠΌΠ°Π½Π΄Ρ Π½Π° Python ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ±ΡΠ°Π½Ρ Π² ΡΡΠ½ΠΊΡΠΈΠΈ.
- Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°ΡΡΡΡ ΠΊΠ»Π°ΡΡΠ°.
- ΠΠ»Π°ΡΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π²Π½ΡΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
- ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π² ΠΏΠ°ΠΊΠ΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
ΠΠ°ΠΊΠ΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π² Python:
ΠΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ-ΠΌΠΎΠ΄ΡΠ»ΠΈ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° Python ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Π² ΠΏΠ°ΠΊΠ΅ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠ°ΠΊΠ΅Ρ ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ (ΠΏΠ°ΠΏΠΊΠ°), ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ²-ΡΠΊΡΠΈΠΏΡΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ΅Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ:
|_ my_file.py
|_ my_package
|_ __init__.py
|_ inside_file.py
Π ΡΠ°ΠΉΠ»Π΅ inside_file.py ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π½Π΅ΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ foo. Π’ΠΎΠ³Π΄Π° ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ foo, Π² ΡΠ°ΠΉΠ»Π΅ my_file ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
from my_package.inside_file import foo
Π’Π°ΠΊ ΠΆΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π²Π½ΡΡΡΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ my_package ΡΠ°ΠΉΠ»Π° __init__.py. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ Python, ΡΡΠΎ Π΄Π°Π½Π½Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. Π Python 3.3 ΠΈ Π²ΡΡΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΉΠ» __init__.py Π² ΠΏΠ°ΠΊΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΡΠ°Π»ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠ°Π΄ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ.
pythonicway.com
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Python: Π§Π°ΡΡΡ 5. ΠΠΎΠ΄ΡΠ»ΠΈ
Π‘Π΅ΡΠ³Π΅ΠΉ Π―ΠΊΠΎΠ²Π»Π΅Π²
ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ 16.08.2010
Π‘Π΅ΡΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°:
ΠΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ # ΠΈΠ· ΡΠ΅ΡΠΈΠΈ # ΡΡΠ°ΡΠ΅ΠΉ:
https://www.ibm.com/developerworks/ru/library/?series_title_by=**auto**
Π‘Π»Π΅Π΄ΠΈΡΠ΅ Π·Π° Π²ΡΡ
ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²ΡΡ
ΡΡΠ°ΡΠ΅ΠΉ ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ.
ΠΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ ΡΠ΅ΡΠΈΠΈ:
Π‘Π»Π΅Π΄ΠΈΡΠ΅ Π·Π° Π²ΡΡ
ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²ΡΡ
ΡΡΠ°ΡΠ΅ΠΉ ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ.
ΠΠΎ ΠΌΠ΅ΡΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ Π²Π°Ρ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΏΠΎΡΠ²ΠΈΡΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ°Π·Π±ΠΈΡΡ Π΅Π΅ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΡΠΎΠ±Ρ ΠΈΡ
Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ. ΠΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΉ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ
, Π½Π΅ ΠΊΠΎΠΏΠΈΡΡΡ ΠΈΡ
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠΎΠ΄ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΡΠΈ Π²Π°ΠΆΠ½ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΈ:
- ΠΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°: ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΌΠ΅ΡΡΠ°Ρ
.
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ½ΡΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΠΌ: ΠΌΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΡΡΠΎ ΠΏΠ°ΠΊΠ΅Ρ ΠΈΠΌΠ΅Π½, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ Π²Π°Ρ ΠΎΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ². ΠΠ°ΠΆΠ΄ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Β«ΠΏΡΠΎΠΆΠΈΠ²Π°Π΅ΡΒ» ΡΠ²ΠΎΠΉ ΡΠΈΠΊΠ» Π²Π½ΡΡΡΠΈ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
- ΠΠ»ΠΎΠ±Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ Π΄Π°Π½Π½ΡΡ
: Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΌΠ΅ΡΡΠ°Ρ
, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½.
CΠ΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΌΡ.
- Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ.
- ΠΠ°ΠΊ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ.
- Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ.
- Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
- ΠΠ°ΠΊΠ΅ΡΡ.
1. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
Python ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΠΊΠ»Π°ΡΡΡ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ
Π² Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ
. Π’Π°ΠΊΠΎΠΉ ΡΠ°ΠΉΠ» Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ. ΠΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ Π² Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ ΠΏΡΡΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ .py. ΠΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΈΡΠ΅Ρ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ my_module.py ΡΠ½Π°ΡΠ°Π»Π° Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, Π·Π°ΡΠ΅ΠΌ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ
, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ
Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH, Π·Π°ΡΠ΅ΠΌ Π² Π·Π°Π²ΠΈΡΡΡΠΈΡ
ΠΎΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΏΡΡΡΡ
ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ
ΡΠ°ΠΉΠ»Π°Ρ
Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.pthβ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»Π΅ΠΆΠ°Ρ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ
. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² PYTHONPATH ΠΈ Π² β.pthβ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΡΠ΄Π° ΡΠ²ΠΎΠΉ ΠΏΡΡΡ. ΠΠ°ΡΠ°Π»ΠΎΠ³ΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠΈΡΠΊ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ sys.path.
ΠΠΎΠ»ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΡΡΠ°ΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° β ΡΠ°ΠΉΠ»Π° Π²Π΅ΡΡ
Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΈ Π½Π°Π±ΠΎΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²-ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠ»Π°Π²Π½ΡΠΉ ΡΠ°ΠΉΠ» Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΉΠ». ΠΠΎΠ΄ΡΠ»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². Π ΡΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½, β namespace, ΠΈ Π²ΡΠ΅ ΠΈΠΌΠ΅Π½Π° Π²Π½ΡΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π΅ΡΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ β ΡΠ°ΠΊΠΈΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅.
2. ΠΠΌΠΏΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡΠ»ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π»Π΅ΠΆΠΈΡ Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, my_module.py), ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ:
>>> python
ΠΈ ΠΏΠΎΡΠΎΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠΌΠΏΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ:
>>> import my_module
ΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ:
>>> my_module.func1()
>>> my_module.func2()
...
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ:
>>> f1 = my_module.func1
ΠΡΠΎΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠΌΠΏΠΎΡΡΠ° β Π²Π·ΡΡΠΈΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π±Π΅Π· ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ:
>>> from my_module import func1, func2
>>> func1()
Π’ΡΠ΅ΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠΌΠΏΠΎΡΡΠ° β Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ
ΠΈΠΌΠ΅Π½, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π² ΠΌΠΎΠ΄ΡΠ»Π΅:
>>> from my_module import *
>>> func1()
ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° ΠΈΠΌΠ΅Π½ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π»ΠΈΠ°ΡΠ°:
>>> from my_module import open as my_open
ΠΡΠΈΠΌΠ΅Ρ. ΠΠΌΠΏΠΎΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ from ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΡΠ°ΠΊΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ, ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ read-only:
>>> from small import x, y
>>> x = 42
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ x β ΡΡΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ x, y Π² ΡΠ°ΠΌΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ small Π½Π΅ ΠΌΠ΅Π½ΡΡΡΡΡ:
>>> import small
>>> small.x = 42
Π·Π΄Π΅ΡΡ x β Π³Π»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ.
ΠΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ Π½Π΅Π΄ΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠΉ import ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ Π±Π΅Π· from Π² ΡΠ΅Ρ
ΡΠ»ΡΡΠ°ΡΡ
, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΌΠ΅ΡΡΠ°Ρ
.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Π΄Π»Ρ Π΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ reload().
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½, ΡΠ²Π»ΡΡΡΠ΅Π΅ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π² Π½Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ, Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠ΅ΡΠΈΠΊΡ: _ΠΈΠΌΡ_ΠΌΠΎΠ΄ΡΠ»Ρ_._ΠΈΠΌΡ_ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ_ .
ΠΠΎΠ΄ΡΠ»ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠ±ΡΡΠ½ΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ import ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
3. ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²
ΠΠ»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ
Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, Π΅ΡΠ»ΠΈ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ my_module.pyc Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, Π³Π΄Π΅ Π½Π°ΠΉΠ΄Π΅Π½ my_module.py, ΡΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±Π°ΠΉΡ-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ my_module. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π½Π΅Ρ, ΡΠΎ ΠΎΠ½ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ, ΠΈ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ my_module.py Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌ my_module.pyc. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π±Π°ΠΉΡ-ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎ-Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΌ (Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·Π½ΡΠΌ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
Π²Π΅ΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°), ΡΠ°ΠΊ ΡΡΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°ΠΌΠΈ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ:
-O
β ΡΡΠ° ΠΎΠΏΡΠΈΡ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π΅Π³ΠΎ Π² ΡΠ°ΠΉΠ»Π΅ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.pyoβ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ· ΠΊΠΎΠ΄Π° ΡΠ΄Π°Π»ΡΡΡΡΡ Π°ΡΡΠ΅ΡΡΡ, ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΠΉ Π΄Π΅Π±Π°Π³, β.pycβ-ΡΠ°ΠΉΠ»Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ.-OO
β ΡΡΠ° ΠΎΠΏΡΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΡΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ°Ρ ΠΎΠΏΡΠΈΡ, ΠΏΠ»ΡΡ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΡ.- Π€Π°ΠΉΠ», Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΠΉ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ. ΠΠ»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΡΠ±ΡΠ°ΡΡ Π² ΠΌΠΎΠ΄ΡΠ»ΠΈ.
- ΠΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.pyΡβ ΠΈΠ»ΠΈ β.pyoβ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π΅Ρ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.pyβ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠ΅Ρ
ΡΠ»ΡΡΠ°ΡΡ
, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π½Π΅ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄.
- ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π³ΡΡΠΆΠ°ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊΠΈ, ΡΠΎΠ±ΡΠ°Π½Π½ΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ·ΡΠΊΠ° ΡΠΈ β ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.soβ Π² Π»ΠΈΠ½ΡΠΊΡΠ΅ Π»ΠΈΠ±ΠΎ β.dllβ Π² Windows.
- ΠΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Β«Π·Π°Π·ΠΈΠΏΠΏΠΎΠ²Π°ΡΡΒ» Π² Π°ΡΡ
ΠΈΠ² Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.zipβ ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ· Π°ΡΡ
ΠΈΠ²Π°.
- ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π³ΡΡΠΆΠ΅Π½ Java-ΠΊΠ»Π°ΡΡ, ΡΠΎΠ±ΡΠ°Π½Π½ΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Jython.
4. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ
Python ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π±ΠΎΠ»Π΅Π΅ 200 ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎ-Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ°ΠΊΠΈΡ
Π·Π°Π΄Π°Ρ, ΠΊΠ°ΠΊ: ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ, ΠΏΠΎΠΈΡΠΊ, ΡΠ΅ΡΡ + ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, GUI ΠΈ Ρ.Π΄. ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° http://docs.python.org/library/.
Π§Π°ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π²ΡΡΡΠΎΠ΅Π½Π° Π² ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ; ΠΎΠ½ΠΈ Π²ΡΡΡΠΎΠ΅Π½Ρ Π»ΠΈΠ±ΠΎ ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ, Π»ΠΈΠ±ΠΎ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π°ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ΄ΡΠ»Ρ sys.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ sys.path ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠΎΠΊ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ², Π² ΠΊΠΎΡΠΎΡΡΡ
ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠ½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΠΈΠ· Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PYTHONPATH ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΡΡ:
>>> import sys
>>> sys.path.append(/home/my/lib/python)
ΠΠ»Ρ Π²ΡΡΡΠ½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π² ΠΌΠΎΠ΄ΡΠ»Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ dir(). ΠΠ½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠΎΠΊ:
>>> dir(sys)
['__displayhook__', '__doc__', '__egginsert', '__excepthook__', '__name__',
...
'stderr', 'stdin', 'stdout', 'subversion', 'version', 'version_info']
5. ΠΠ°ΠΊΠ΅ΡΡ
ΠΠ°ΠΊΠ΅ΡΡ β ΡΠΏΠΎΡΠΎΠ± ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΠΊΠ΅ΡΠ½Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π΅Ρ Π²ΡΠ΅ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ Π΄Π΅Π»Π°Π΅Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ. ΠΡΠ»ΠΈ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΡΡΠΎΠ²ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅, Π²ΡΠ΅, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² PYTHONPATH β ΡΡΠΎ ΡΡΡΠΎΠ²ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³.
Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π΄Π΅Π»Π°Π΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΠ΅Π½ Π°Π²ΡΠΎΡΠ°ΠΌΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π΅Π»Π°Π΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π°Π²ΡΠΎΡΠ°ΠΌΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΡΡ ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π»Π΅ΠΆΠΈΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ TCP. Π Π½Π΅ΠΌ Π»Π΅ΠΆΠ°Ρ Π΄Π²Π° ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° β Server ΠΈ Client:
TCP/
_init_.py
main.py
Server/
_init_.py
tcp.py
server.py
lib.py
Client/
_init_.py
tcp.py
client.py
lib.py
Π€Π°ΠΉΠ» _init_.py Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π» ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΠΊΠ°ΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ. ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΠΏΡΡΡΠΎΠΉ ΡΠ°ΠΉΠ». Π’ΠΎΠ³Π΄Π° ΠΈΠΌΠΏΠΎΡΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ:
>>> import TCP.Server.lib
>>> import TCP.Client.lib
Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ:
>>> import TCP.Server.lib.connect()
ΠΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ:
>>> from TCP.Server import lib as server_lib
>>> from TCP.Client import lib as client_lib
>>> server_lib.connect()
>>> client_lib.connect()
ΠΠ΄Π΅ΡΡ Π²ΠΌΠ΅ΡΡΠΎ lib ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»Π΅Π½ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΏΠΎΠ΄ΠΏΠ°ΠΊΠ΅Ρ ΠΈΠ»ΠΈ ΠΈΠΌΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π² TCP.Server β Ρ.Π΅. ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠ»Π°ΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ° Ρ ΠΈΠΌΠΏΠΎΡΡΠΎΠΌ:
>>> from TCP import *
ΡΠΎ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌ __init__.py ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠΏΠΈΡΠΎΠΊ __all__ , Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΡΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΡΡΡΡ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
__all__ = ["Server", "Client"]
ΠΠΌΠΏΠΎΡΡ Π²ΡΠ΅Ρ
ΠΈΠΌΠ΅Π½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌ. ΠΡΠΈ ΡΡΠΎΠΌ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ β Π²ΠΌΠ΅ΡΡΠΎ Π½ΠΈΡ
Π±ΡΠ΄ΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΡΠ·Π½Π°Π»ΠΈ ΠΎΡΠ½ΠΎΠ²Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΈΡΠΎΠ½Π° ΠΈ ΠΈΠΌΠΏΠΎΡΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠΌΠΏΠΎΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ β ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ Π² ΠΏΠΈΡΠΎΠ½Π΅. ΠΠΎΠ»ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΈΡ
Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠΌΠΏΠΎΡΡΠ°. ΠΠΎΠ΄ΡΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΠΈΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ°Π·Π±ΠΈΠ²Π°Ρ Π»ΠΎΠ³ΠΈΠΊΡ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. ΠΠΎΠ΄ Π²Π½ΡΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½ ΠΎΡ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΡΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΡ ΠΈΠΌΠ΅Π½ Π²Π½ΡΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ ΠΏΡΡΠ΅ΠΉ, Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠ³Π°Π½ΠΈΠ·ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΡΡ. Π ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎ ΠΊΠ»Π°ΡΡΠ°Ρ
Π² Python. ΠΠΎΠ΄ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΡΠΎΠ²Π΅ΡΡΠ»ΡΡ Π½Π° Π²Π΅ΡΡΠΈΠΈ ΠΏΠΈΡΠΎΠ½Π° 2.6.
<< ΠΡΠ΅Π΄ΡΠ΄ΡΡΠ°Ρ ΡΡΠ°ΡΡΡ. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΠ°ΡΡΡ >>
Π Π΅ΡΡΡΡΡ Π΄Π»Ρ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ
ΠΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ ΠΌΠ΅Π½Ρ Π½Π° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ
www.ibm.com
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² python? Π Π°ΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅ .py ~ PythonRu
ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΡΡΠΎΠΊ: ΠΡΠ΅ΡΠ°ΡΠΎΡΡ Python
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ?
ΠΠΎΠ΄ΡΠ»Ρ β ΡΡΠΎ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠΎΠ΄ python, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»ΡΠΌ python Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΌΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠΎΠ΄ΡΠ»ΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ» Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .py
:
Π‘ΠΎΡ
ΡΠ°Π½ΠΈΠΌ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ» ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ mymodule.py
def greeting(name):
print("ΠΡΠΈΠ²Π΅Ρ, " + name)
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° import
:
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ mymodule, ΠΈ Π²ΡΠ·ΠΎΠ²Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΡ:
import mymodule
mymodule.greeting("ΠΠ½Π΄ΡΠ΅ΠΉ")
ΠΡΠ²ΠΎΠ΄:
ΠΡΠΈΠ²Π΅Ρ, ΠΠ½Π΄ΡΠ΅ΠΉ
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ: module_name.function_name
.
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅
ΠΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ°ΠΊ ΡΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²ΡΠ΅Ρ
ΡΠΈΠΏΠΎΠ² (ΠΌΠ°ΡΡΠΈΠ²Ρ, ΡΠ»ΠΎΠ²Π°ΡΠΈ, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ Ρ. Π΄.).
Π‘ΠΎΡ
ΡΠ°Π½ΠΈΠΌ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ» mymodule.py
person1 = {
"name": "ΠΠΈΠΊΡΠΎΡ",
"age": 36,
"country": "Π ΠΎΡΡΠΈΡ"
}
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ mymodule, ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ»ΠΎΠ²Π°ΡΡ person1
:
Π’Π΅ΡΡ Π½Π° Π·Π½Π°Π½ΠΈΠ΅ python
Π§ΡΠΎ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΡΠΎΡ ΠΊΠΎΠ΄?
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
ΠΠ°ΠΊ Π½Π΅Π»ΡΠ·Ρ Π½Π°Π·Π²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ?
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
ΠΠ°ΠΊ ΡΠ·Π½Π°ΡΡ Π΄Π»ΠΈΠ½Ρ ΡΠΏΠΈΡΠΊΠ°?
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
ΠΠ°ΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°?
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
ΠΠ°ΠΊΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π² python 3 β print(3/5) ?
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
{{title}}
{{image}}
{{content}}
{{/global}}ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ ΡΠ΅ΡΠ΅Π·
import mymodule
a = mymodule.person1["age"]
print(a)
ΠΡΠ²ΠΎΠ΄:
36
ΠΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°Π·Π²Π°ΡΡ ΡΠ°ΠΉΠ» ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠ°ΠΊ Π²Π°ΠΌ Π½ΡΠ°Π²ΠΈΡΡΡ, Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ, ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° .py
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ as
.
import mymodule as mx
a = mx.person1["age"]
print(a)
ΠΡΠ²ΠΎΠ΄:
36
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ
Π Python Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° Π·Π°Ρ
ΠΎΡΠΈΡΠ΅.
import platform
x = platform.system()
print(x)
ΠΡΠ²ΠΎΠ΄:
Windows
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ dir()
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ
ΠΈΠΌΠ΅Π½ ΡΡΠ½ΠΊΡΠΈΠΉ (ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
) Π² ΠΌΠΎΠ΄ΡΠ»Π΅. Π€ΡΠ½ΠΊΡΠΈΡ dir()
.
import platform
x = dir(platform)
print(x)
ΠΡΠ²ΠΎΠ΄:
['DEV_NULL', '_UNIXCONFDIR', '_WIN32_CLIENT_RELEASES', '_WIN32_SERVER_RELEASES', '__builtins__', '__cached__', '__copyright__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '__version__', '_default_architecture', '_dist_try_harder', '_follow_symlinks', '_ironpython26_sys_version_parser', '_ironpython_sys_version_parser', '_java_getprop', '_libc_search', '_linux_distribution', '_lsb_release_version', '_mac_ver_xml', '_node', '_norm_version', '_parse_release_file', '_platform', '_platform_cache', '_pypy_sys_version_parser', '_release_filename', '_release_version', '_supported_dists', '_sys_version', '_sys_version_cache', '_sys_version_parser', '_syscmd_file', '_syscmd_uname', '_syscmd_ver', '_uname_cache', '_ver_output', 'architecture', 'collections', 'dist', 'java_ver', 'libc_ver', 'linux_distribution', 'mac_ver', 'machine', 'node', 'os', 'platform', 'popen', 'processor', 'python_branch', 'python_build', 'python_compiler', 'python_implementation', 'python_revision', 'python_version', 'python_version_tuple', 're', 'release', 'subprocess', 'sys', 'system', 'system_alias', 'uname', 'uname_result', 'version', 'warnings', 'win32_ver']
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π€ΡΠ½ΠΊΡΠΈΡ dir()
ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° Π²ΡΠ΅Ρ
ΠΌΠΎΠ΄ΡΠ»ΡΡ
, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ.
ΠΠΌΠΏΠΎΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΈΡΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ from
def greeting(name):
print("ΠΡΠΈΠ²Π΅Ρ, " + name)
person1 = {
"name": "ΠΠΈΠΊΡΠΎΡ",
"age": 36,
"country": "Π ΠΎΡΡΠΈΡ"
}
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ»ΠΎΠ²Π°ΡΡ person1
:
from mymodule import person1
print (person1["age"])
ΠΡΠ²ΠΎΠ΄:
36
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° from
Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ. ΠΡΠΈΠΌΠ΅Ρ: person1["age"]
, Π° Π½Π΅ mymodule.person1["age"]
ΠΠ°Π»Π΅Π΅: ΠΠ°ΡΡ Π² Python
pythonru.com
Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ: ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌΠΈ import ΠΈ from
ΠΠΎΠ΄ΡΠ»Π΅ΠΌ Π² Python Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ°ΠΉΠ» Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ (Π΄Π°-Π΄Π°, Π²ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΈΡΠ°Π»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»ΡΠΌΠΈ). Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈΠ»ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π²Π°ΠΌΠΈ.
ΠΠ°ΠΆΠ΄Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ°ΠΌ, ΡΡΠ½ΠΊΡΠΈΡΠΌ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ. ΠΡΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Python, Π° Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° C ΠΈΠ»ΠΈ C++.
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ import. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ os Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ:
>>> import os
>>> os.getcwd()
'C:\\Python33'
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° import ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΠ΄Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, Ρ
ΠΎΡΡ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π΅Π»Π°ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π°. ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»ΠΈ time ΠΈ random.
>>> import time, random
>>> time.time()
1376047104.056417
>>> random.random()
0.9874550833306869
ΠΠΎΡΠ»Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π΅Π³ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ΅ e, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ math:
>>> import math
>>> math.e
2.718281828459045
Π‘ΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π°ΡΡΠΈΠ±ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΠ΄Π΅Π½, Π²ΠΎΠ·Π±ΡΠ΄ΠΈΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ AttributeError. Π Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠ΄Π°ΡΡΡΡ Π½Π°ΠΉΡΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π΄Π»Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎ ImportError.
>>> import notexist
Traceback (most recent call last):
File "", line 1, in
import notexist
ImportError: No module named 'notexist'
>>> import math
>>> math.Π
Traceback (most recent call last):
File "", line 1, in
math.Π
AttributeError: 'module' object has no attribute 'Π'
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠ²
ΠΡΠ»ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅, ΠΈΠ»ΠΈ ΠΎΠ½ΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ, ΡΠΎ Π΄Π»Ρ Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° as.
>>> import math as m
>>> m.e
2.718281828459045
Π’Π΅ΠΏΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ math ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ m, Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ math Π² ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ (Π΅ΡΠ»ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ import math, ΡΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡΠ»Ρ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ m, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ math).
ΠΠ½ΡΡΡΡΠΊΡΠΈΡ from
ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ from. ΠΠ½Π° ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΡΠΌΠ°ΡΠΎΠ²:
from <ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ> import <ΠΡΡΠΈΠ±ΡΡ 1> [ as <ΠΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ 1> ], [<ΠΡΡΠΈΠ±ΡΡ 2> [ as <ΠΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ 2> ] ...]
from <ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ> import *
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π²Π°ΠΌΠΈ Π°ΡΡΠΈΠ±ΡΡΡ. ΠΠ»Ρ Π΄Π»ΠΈΠ½Π½ΡΡ
ΠΈΠΌΠ΅Π½ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ, ΡΠΊΠ°Π·Π°Π² Π΅Π³ΠΎ ΠΏΠΎΡΠ»Π΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° as.
>>> from math import e, ceil as c
>>> e
2.718281828459045
>>> c(4.6)
5
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΡΡΡΠΎΠΊΠ°Ρ
, Π΅ΡΠ»ΠΈ ΠΈΡ
ΠΌΠ½ΠΎΠ³ΠΎ, Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°:
>>> from math import (sin, cos,
... tan, atan)
ΠΡΠΎΡΠΎΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ from ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ (ΡΠΎΡΠ½Π΅Π΅, ΠΏΠΎΡΡΠΈ Π²ΡΠ΅) ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ sys:
>>> from sys import *
>>> version
'3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)]'
>>> version_info
sys.version_info(major=3, minor=3, micro=2, releaselevel='final', serial=0)
Π‘Π»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π½Π΅ Π²ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Π±ΡΠ΄ΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ. ΠΡΠ»ΠΈ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ __all__ (ΡΠΏΠΈΡΠΎΠΊ Π°ΡΡΠΈΠ±ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ), ΡΠΎ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π°ΡΡΠΈΠ±ΡΡΡ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°. ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ __all__ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π°, ΡΠΎ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ Π²ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ, Π½Π΅ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠ΅ΡΡ Ρ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΠΏΠΎΠ΄ΡΡΡΠΊΠΈΠ²Π°Π½ΠΈΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ΅Ρ
Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΡΠΈΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΠ΅Π½ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΈΠΌΠ΅Π½Π°, Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°Π½Ρ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π° Python
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» mymodule.py, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡΠ΄Ρ ΡΡΠ½ΠΊΡΠΈΠΈ:
def hello():
print('Hello, world!')
def fib(n):
a = b = 1
for i in range(n - 2):
a, b = b, a + b
return b
Π’Π΅ΠΏΠ΅ΡΡ Π² ΡΡΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΉΠ», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, main.py:
import mymodule
mymodule.hello()
print(mymodule.fib(10))
ΠΡΠ²Π΅Π΄Π΅Ρ:
Hello, world!
55
ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ! ΠΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ! ΠΠ°ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠΊ ΠΎΡΠ²Π΅ΡΡ Π΅ΡΡ Π½Π° ΠΏΠ°ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ², ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ:
ΠΠ°ΠΊ Π½Π°Π·Π²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ?
ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ Π²Ρ (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π»ΡΠ΄ΠΈ) Π±ΡΠ΄ΡΡ Π΅Π³ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΎΠ΄ΡΠ»Ρ Π½Π΅Π»ΡΠ·Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ (ΠΈΡ
ΡΠΏΠΈΡΠΎΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΡ). Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Π½Π΅Π»ΡΠ·Ρ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ ΡΠΈΡΡΡ. Π Π½Π΅ ΡΡΠΎΠΈΡ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΊΠ°ΠΊΡΡ-Π»ΠΈΠ±ΠΎ ΠΈΠ· Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΉ. Π’ΠΎ Π΅ΡΡΡ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ Π½Π΅ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΡΠΈ Π΅Π³ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ.
ΠΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ?
Π’ΡΠ΄Π°, Π³Π΄Π΅ Π΅Π³ΠΎ ΠΏΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΉΡΠΈ. ΠΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠΊΠ°Π·Π°Π½Ρ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ sys.path. Π Π½Π΅Π³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠ΅ΠΊΡΡΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ (ΡΠΎ Π΅ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ), Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΡΡ
ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ python. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ sys.path ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π²ΡΡΡΠ½ΡΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² Π»ΡΠ±ΠΎΠ΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ Π΄Π»Ρ Π²Π°Ρ ΠΌΠ΅ΡΡΠΎ (Π³Π»Π°Π²Π½ΠΎΠ΅, Π½Π΅ Π·Π°Π±ΡΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ sys.path).
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ?
ΠΠΎΠΆΠ½ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°Π΄ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ Π΅Π³ΠΎ ΠΊΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, ΡΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΡΠΎ-ΡΠΎ ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ, ΡΠΎ ΠΏΡΠΈ Π΅Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π½ΠΎ. ΠΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ, Π·Π°ΠΏΡΡΠ΅Π½ Π»ΠΈ ΡΠΊΡΠΈΠΏΡ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ __name__, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π² Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, ΠΈ ΡΠ°Π²Π½Π° Β«__main__Β», Π΅ΡΠ»ΠΈ ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΡΠ΅Π½ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΈ ΠΈΠΌΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, mymodule.py ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π²ΠΎΡ ΡΠ°ΠΊ:
def hello():
print('Hello, world!')
def fib(n):
a = b = 1
for i in range(n - 2):
a, b = b, a + b
return b
if __name__ == "__main__":
hello()
for i in range(10):
print(fib(i))
pythonworld.ru
ΠΠΎΠ΄ΡΠ»Ρ math | Python 3 Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΈ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ²
ΠΠΎΠ΄ΡΠ»Ρ math β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ²Π°ΠΆΠ½Π΅ΠΉΡΠΈΡ
Π² Python. ΠΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠΈΡΠ½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΈΡΠ»Π°ΠΌΠΈ.
math.ceil(X) β ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π³ΠΎ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π°.
math.copysign(X, Y) β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΈΡΠ»ΠΎ, ΠΈΠΌΠ΅ΡΡΠ΅Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ ΡΠΈΡΠ»Π° X, Π° Π·Π½Π°ΠΊ β ΠΊΠ°ΠΊ Ρ ΡΠΈΡΠ»Π° Y.
math.fabs(X) β ΠΌΠΎΠ΄ΡΠ»Ρ X.
math.factorial(X) β ΡΠ°ΠΊΡΠΎΡΠΈΠ°Π» ΡΠΈΡΠ»Π° X.
math.floor(X) β ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ Π²Π½ΠΈΠ·.
math.fmod(X, Y) β ΠΎΡΡΠ°ΡΠΎΠΊ ΠΎΡ Π΄Π΅Π»Π΅Π½ΠΈΡ X Π½Π° Y.
math.frexp(X) β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°Π½ΡΠΈΡΡΡ ΠΈ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠΈΡΠ»Π°.
math.ldexp(X, I) β X * 2i. Π€ΡΠ½ΠΊΡΠΈΡ, ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ math.frexp().
math.fsum(ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ) β ΡΡΠΌΠΌΠ° Π²ΡΠ΅Ρ
ΡΠ»Π΅Π½ΠΎΠ² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ sum(), Π½ΠΎ math.fsum() Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½Π° Π΄Π»Ρ ΡΠΈΡΠ΅Π» Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ.
math.isfinite(X) β ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ X ΡΠΈΡΠ»ΠΎΠΌ.
math.isinf(X) β ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ X Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΡΡ.
math.isnan(X) β ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ X NaN (Not a Number β Π½Π΅ ΡΠΈΡΠ»ΠΎ).
math.modf(X) β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄ΡΠΎΠ±Π½ΡΡ ΠΈ ΡΠ΅Π»ΡΡ ΡΠ°ΡΡΡ ΡΠΈΡΠ»Π° X. ΠΠ±Π° ΡΠΈΡΠ»Π° ΠΈΠΌΠ΅ΡΡ ΡΠΎΡ ΠΆΠ΅ Π·Π½Π°ΠΊ, ΡΡΠΎ ΠΈ X.
math.trunc(X) β ΡΡΠ΅ΠΊΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ X Π΄ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ.
math.exp(X) β eX.
math.expm1(X) β eX β 1. ΠΡΠΈ X β 0 ΡΠΎΡΠ½Π΅Π΅, ΡΠ΅ΠΌ math.exp(X)-1.
math.log(X, [base]) β Π»ΠΎΠ³Π°ΡΠΈΡΠΌ X ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΡ base. ΠΡΠ»ΠΈ base Π½Π΅ ΡΠΊΠ°Π·Π°Π½, Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π½Π°ΡΡΡΠ°Π»ΡΠ½ΡΠΉ Π»ΠΎΠ³Π°ΡΠΈΡΠΌ.
math.log1p(X) β Π½Π°ΡΡΡΠ°Π»ΡΠ½ΡΠΉ Π»ΠΎΠ³Π°ΡΠΈΡΠΌ (1 + X). ΠΡΠΈ X β 0 ΡΠΎΡΠ½Π΅Π΅, ΡΠ΅ΠΌ math.log(1+X).
math.log10(X) β Π»ΠΎΠ³Π°ΡΠΈΡΠΌ X ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΡ 10.
math.log2(X) β Π»ΠΎΠ³Π°ΡΠΈΡΠΌ X ΠΏΠΎ ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΡ 2. ΠΠΎΠ²ΠΎΠ΅ Π² Python 3.3.
math.pow(X, Y) β XY.
math.sqrt(X) β ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΉ ΠΊΠΎΡΠ΅Π½Ρ ΠΈΠ· X.
math.acos(X) β Π°ΡΠΊΠΊΠΎΡΠΈΠ½ΡΡ X. Π ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
.
math.asin(X) β Π°ΡΠΊΡΠΈΠ½ΡΡ X. Π ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
.
math.atan(X) β Π°ΡΠΊΡΠ°Π½Π³Π΅Π½Ρ X. Π ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
.
math.atan2(Y, X) β Π°ΡΠΊΡΠ°Π½Π³Π΅Π½Ρ Y/X. Π ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
. Π‘ ΡΡΠ΅ΡΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΡΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΡΠΊΠ° (X, Y).
math.cos(X) β ΠΊΠΎΡΠΈΠ½ΡΡ X (X ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
).
math.sin(X) β ΡΠΈΠ½ΡΡ X (X ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
).
math.tan(X) β ΡΠ°Π½Π³Π΅Π½Ρ X (X ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ
).
math.hypot(X, Y) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π³ΠΈΠΏΠΎΡΠ΅Π½ΡΠ·Ρ ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ° Ρ ΠΊΠ°ΡΠ΅ΡΠ°ΠΌΠΈ X ΠΈ Y (math.sqrt(x * x + y * y)).
math.degrees(X) β ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΡΠ°Π΄ΠΈΠ°Π½Ρ Π² Π³ΡΠ°Π΄ΡΡΡ.
math.radians(X) β ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ Π³ΡΠ°Π΄ΡΡΡ Π² ΡΠ°Π΄ΠΈΠ°Π½Ρ.
math.cosh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΡΠΈΠ½ΡΡ.
math.sinh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠ½ΡΡ.
math.tanh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π½Π³Π΅Π½Ρ.
math.acosh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠΎΡΠΈΠ½ΡΡ.
math.asinh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠ½ΡΡ.
math.atanh(X) β Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π³ΠΈΠΏΠ΅ΡΠ±ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π½Π³Π΅Π½Ρ.
math.erf(X) β ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ.
math.erfc(X) β Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ (1 β math.erf(X)).
math.gamma(X) β Π³Π°ΠΌΠΌΠ°-ΡΡΠ½ΠΊΡΠΈΡ X.
math.lgamma(X) β Π½Π°ΡΡΡΠ°Π»ΡΠ½ΡΠΉ Π»ΠΎΠ³Π°ΡΠΈΡΠΌ Π³Π°ΠΌΠΌΠ°-ΡΡΠ½ΠΊΡΠΈΠΈ X.
math.pi β pi = 3,1415926β¦
math.e β e = 2,718281β¦
pythonworld.ru

ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ 16.08.2010
-O
β ΡΡΠ° ΠΎΠΏΡΠΈΡ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π΅Π³ΠΎ Π² ΡΠ°ΠΉΠ»Π΅ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ β.pyoβ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ· ΠΊΠΎΠ΄Π° ΡΠ΄Π°Π»ΡΡΡΡΡ Π°ΡΡΠ΅ΡΡΡ, ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΠΉ Π΄Π΅Π±Π°Π³, β.pycβ-ΡΠ°ΠΉΠ»Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ.-OO
β ΡΡΠ° ΠΎΠΏΡΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΡΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ°Ρ ΠΎΠΏΡΠΈΡ, ΠΏΠ»ΡΡ ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΡ.ΠΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΡΡΠΎΠΊ: ΠΡΠ΅ΡΠ°ΡΠΎΡΡ Python
.py
:Π‘ΠΎΡ ΡΠ°Π½ΠΈΠΌ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ» ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ
mymodule.py
def greeting(name):
print("ΠΡΠΈΠ²Π΅Ρ, " + name)
import
:import mymodule
mymodule.greeting("ΠΠ½Π΄ΡΠ΅ΠΉ")
ΠΡΠΈΠ²Π΅Ρ, ΠΠ½Π΄ΡΠ΅ΠΉ
module_name.function_name
.Π‘ΠΎΡ ΡΠ°Π½ΠΈΠΌ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π² ΡΠ°ΠΉΠ»
mymodule.py
person1 = {
"name": "ΠΠΈΠΊΡΠΎΡ",
"age": 36,
"country": "Π ΠΎΡΡΠΈΡ"
}
person1
:import mymodule
a = mymodule.person1["age"]
print(a)
36
.py
as
.import mymodule as mx
a = mx.person1["age"]
print(a)
36
import platform
x = platform.system()
print(x)
Windows
dir()
.import platform
x = dir(platform)
print(x)
['DEV_NULL', '_UNIXCONFDIR', '_WIN32_CLIENT_RELEASES', '_WIN32_SERVER_RELEASES', '__builtins__', '__cached__', '__copyright__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '__version__', '_default_architecture', '_dist_try_harder', '_follow_symlinks', '_ironpython26_sys_version_parser', '_ironpython_sys_version_parser', '_java_getprop', '_libc_search', '_linux_distribution', '_lsb_release_version', '_mac_ver_xml', '_node', '_norm_version', '_parse_release_file', '_platform', '_platform_cache', '_pypy_sys_version_parser', '_release_filename', '_release_version', '_supported_dists', '_sys_version', '_sys_version_cache', '_sys_version_parser', '_syscmd_file', '_syscmd_uname', '_syscmd_ver', '_uname_cache', '_ver_output', 'architecture', 'collections', 'dist', 'java_ver', 'libc_ver', 'linux_distribution', 'mac_ver', 'machine', 'node', 'os', 'platform', 'popen', 'processor', 'python_branch', 'python_build', 'python_compiler', 'python_implementation', 'python_revision', 'python_version', 'python_version_tuple', 're', 'release', 'subprocess', 'sys', 'system', 'system_alias', 'uname', 'uname_result', 'version', 'warnings', 'win32_ver']
dir()
ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° Π²ΡΠ΅Ρ
ΠΌΠΎΠ΄ΡΠ»ΡΡ
, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΎΠ·Π΄Π°Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ.from
def greeting(name):
print("ΠΡΠΈΠ²Π΅Ρ, " + name)
person1 = {
"name": "ΠΠΈΠΊΡΠΎΡ",
"age": 36,
"country": "Π ΠΎΡΡΠΈΡ"
}
person1
:from mymodule import person1
print (person1["age"])
36
from
Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ. ΠΡΠΈΠΌΠ΅Ρ: person1["age"]
, Π° Π½Π΅ mymodule.person1["age"]
ΠΠ°Π»Π΅Π΅: ΠΠ°ΡΡ Π² Python