рдРрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ + рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рдХрдо рдЦрддрд░рдирд╛рдХ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕реЗ рдХреЛрдб рдореЗрдВ рдЯрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдЦ рдХреЛ 0 - 1.5 рд╡рд░реНрд╖реЛрдВ рдХреЗ рдЕрдиреБрднрд╡ рд╡рд╛рд▓реЗ рдЕрдЬрдЧрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрдиреБрднрд╡реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдЖрд▓реЛрдЪрдирд╛ рдпрд╛ рдкреВрд░рдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
1. рд▓рдВрдмреЛрджрд░ред
рд▓рдВрдмреЛрджрд░ рдореЗрдВ рдЪрд░ рдЪрд░ - рдПрдХ рдЪрд░ рдХрд╛ рд╕рдВрджрд░реНрдн, рдореВрд▓реНрдп рдирд╣реАрдВред рдЬрдм рддрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рддрдХ рдЪрд░ pw 5 рд╣реИ
рд╕рдорд╕реНрдпрд╛ рдХреЛрдб
to_pow = {} for pw in xrange(5): to_pow[pw] = lambda x: x ** pw print to_pow[2](10)
| рд╕рдорд╛рдзрд╛рди: рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рдВрдмреЛрджрд░ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЪрд░ рдкрд╛рд╕ рдХрд░реЗрдВ
to_pow = {} for pw in xrange(5): to_pow[pw] = lambda x, pw=pw: x ** pw print to_pow[2](10)
|
2. рд╢рд╛рд╕реНрддреНрд░реАрдп рдФрд░ рдирдИ рд╢реИрд▓реА рдХреА рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ rhomboidal рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдХреЗ рджреМрд░рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛ рдЦреЛрдЬ рдХрд╛ рдЙрддреНрдХреГрд╖реНрдЯ рдХреНрд░рдо

| class A(): def field(self): return 'a' class B(A): pass class C(A): def field(self): return 'c' class Entity(B, C): pass print Entity().field()
| class A(): def field(self): return 'a' class B(A): pass class C(A, object):
|
3. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╡рд╕реНрддреБрдПрдВ
рдЬрд╛рджреВ:
def get_data(val=[]): val.append(1) return val print get_data()
| рд╕рдорд╛рдзрд╛рди:
def get_data(val=None): val = val or [] val.append(1) return val print get_data()
|
val = val рдпрд╛ [] рдЫреЛрдЯрд╛ рдФрд░ рдХрд╛рдлреА рд╕реНрд╡реАрдХрд╛рд░реНрдп рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдЗрдирдкреБрдЯ рдореЗрдВ 0 рдкрд╛рд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ, рдЧрд▓рдд, рдЖрджрд┐ред рдлрд┐рд░ рдЖрдкрдХреЛ рдЬрд╛рдВрдЪрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ gogle-style
google-styleguide.googlecode.com/svn/trunk/pyguide.html?showone=Default_Argument_Values#DefaultArgument_Values рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ
(рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдирд╣реАрдВ рдкрдврд╝рд╛ рд╣реИ - рдореИрдВ рдЖрдкрдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рджреЗрдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред)
4. рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХреЛ рдПрдХ рдмрд╛рд░ рдкреНрд░рд╛рд░рдВрдн рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
import random def get_random_id(rand_id=random.randint(1, 100)): return rand_id print get_random_id()
5. рдЕрдкрд╡рд╛рджреЛрдВ рдХреЗ рдкрджрд╛рдиреБрдХреНрд░рдо рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдРрд╕реА рд╕реВрдЪрд┐рдпрд╛рдБ рдЖрдкрдХреЗ рд╕рд┐рд░ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ
docs.python.org/2/library/exception.html#exception-hierarchy + рдмрд┐рд▓реНрдЯ-рдЗрди рдореЙрдбреНрдпреВрд▓ рдЕрдкрд╡рд╛рдж рд╕реВрдЪрд┐рдпрд╛рдБ + рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреА рдЕрдкрд╡рд╛рдж рдкрджрд╛рдиреБрдХреНрд░рдо, рдЖрдк рднреА PyLint рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИрдВред рддреЛ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:
KeyError рдХрднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧреА
try: d = {} d['xxx'] except LookupError: print '1' except KeyError: print '2'
6. рд╢реЙрд░реНрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдирдВрдмрд░реЛрдВ рдХреА рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рдХреИрд╢рд┐рдВрдЧ
str1 = 'x' * 100 str2 = 'x' * 100 print str1 is str2
7. рд╕рдореНрдпрдХ рд╕рдорд╛рд╕ред
рдПрдХ рд▓рд╛рдкрддрд╛ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдирд╣реАрдВ рдлреЗрдВрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрд╕рдиреНрди рд░реЗрдЦрд╛рдУрдВ рдХреЛ рдорд┐рд▓рд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реНрдерд┐рддрд┐ рддрдм рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрдм рдЯрдкрд▓ рдореЗрдВ рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреЗ рдмрд╛рдж рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛, рдФрд░ рдлрд┐рд░ рдЯрдкрд▓ рдореЗрдВ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЧрдпрд╛, рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛
tpl = ( '1_3_dfsf_sdfsf', '3_11_sdfd_jfg', '7_17_1dsd12asf sa321fs afsfffsdfs' '11_19_dfgdfg211123sdg sdgsdgf dsfg', '13_7_dsfgs dgfdsgdg', '24_12_dasdsfgs dgfdsgdg', )
8. рдмреБрд▓рд┐рдпрди рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рдХреГрддрд┐ред
рд╕рдЪреНрдЪрд╛ рдФрд░ рдЧрд▓рдд рд╕рдмрд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ 1 рдФрд░ 0 рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╡реЗ рднрд╛рд╖рд╛ рдХреА рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдирд╛рдо рдХреЗ рд╕рд╛рде рдЖрдП рдереЗред
try: print True + 10 / False * 3 except Exception as e: print e
>>> type(True).__mro__ (<type 'bool'>, <type 'int'>, <type 'object'>)
docs.python.org/release/2.3.5/whatsnew/section-bool.htmlрдХреЛрдб рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рд╛рдердорд┐рдХ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рд╛рде рдкрд╛рдпрдерди рдХреЗ рдмреБрд▓рд┐рдпрди рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
рдПрдХ рд╡рд╛рдХреНрдп рдореЗрдВ True рдФрд░ False рдХреЛ рд╕рдореНтАНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: рд╡реЗ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рдиреЛрдВ рдХреЛ 1 рдФрд░ 0 рдореЗрдВ рд╡рд░реНрддрдиреА рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ 1 рдЕрдВрддрд░ рдХреЗ рдмрдЬрд╛рдп str () рдФрд░ repr () рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ 'True' рдФрд░ 'False' рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред 'рдФрд░' 0 'ред
* *ред рдЖрдЙрдЯрдбреЗрдЯреЗрдб рдбрд┐рдЬрд╝рд╛рдЗрдиред рдпрд╣ рдЦрддрд░рдирд╛рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╕реНрд▓реИрд╢ рдХреЛ рдЦреЛрдиреЗ рдпрд╛ рдХреЗрд╡рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд╣рд▓реЗ рднрд╛рдЧ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдХреЛрд╖реНрдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
x = 1 + 2 + 3 \ + 4
рдкреАрдПрд╕: рдЖрдЗрдЯрдо рдирдВрдмрд░ 8 * рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рд▓реЗрдЦ рдореЗрдВ рд╢реБрд░реВ рдореЗрдВ рдЧрд▓рддреА рд╕реЗ рджреЛ 7 рдЕрдВрдХ рдереЗред рдХреНрд░рдорд╛рдВрдХрди рдХреЛ рдмрд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдЪреВрдВрдХрд┐ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреЗ рд▓рд┐рдВрдХ рд╣реИрдВ), рд╣рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдВрдХреЗрддрди рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрдирд╛ рдерд╛ред
9. рддреБрд▓рдирд╛ рд╕рдВрдЪрд╛рд▓рдХ рдФрд░, рдпрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП PHP рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЯреНрд░реВ рдпрд╛ рдЧрд▓рдд рдирд╣реАрдВ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреБрд▓рдирд╛ рддрддреНрд╡реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ current_lang рдХреЛ рдкрд╣рд▓рд╛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рддрддреНрд╡ рд╕реМрдВрдкрд╛ рдЬрд╛рдПрдЧрд╛
current_lang = from_GET or from_Session or from_DB or DEFAULT_LANG
рдЯрд░реНрдиреЗрд░реА рдСрдкрд░реЗрдЯрд░ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдРрд╕реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рднреА рдХрд╛рдо рдХрд░реЗрдЧреА, рд▓реЗрдХрд┐рди рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдпрджрд┐ рд╕реВрдЪреА рдХрд╛ рдкрд╣рд▓рд╛ рддрддреНрд╡ ``, 0, рдЧрд▓рдд, рдХреЛрдИ рдирд╣реАрдВ рд╣реИ, рддреЛ рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рддрддреНрд╡ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╕реВрдЪреА рдХрд╛ рдкрд╣рд▓рд╛ рддрддреНрд╡ рдирд╣реАрдВред
a = ['one', 'two', 'three'] print a and a[0] or None
10. рд╕рднреА рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдкрдХрдбрд╝реЗрдВ рдФрд░ рдлрд┐рд░ рднреА рдЙрдиреНрд╣реЗрдВ рд╕рдВрднрд╛рд▓реЗрдВ рдирд╣реАрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдХреБрдЫ рднреА рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рдЦрддрд░реЗ рд╕реЗ рднрд░рд╛ рд╣реИ рдФрд░ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦрдиреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк 100% рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЕрдкрд╡рд╛рдж рдХреЛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдЕрдиреНрдп рдбреЗрд╡рд▓рдкрд░ рдХреЛрд╢рд┐рд╢ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдмреНрд▓реЙрдХ рдореЗрдВ рдПрдХ рдкрдВрдХреНрддрд┐ рдирд╣реАрдВ рдЬреЛрдбрд╝реЗрдЧрд╛, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдореИрдВ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЛ рдкрдХрдбрд╝рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рд╕рдорд╛рдзрд╛рди: рд▓реЙрдЧ рдореЗрдВ рд▓рд┐рдЦреЗрдВ, рдкрдХрдбрд╝реЗ рдЧрдП рдЕрдкрд╡рд╛рджреЛрдВ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдлреНрд░реЗрдо рдХреЛ рдЫреЛрдбрд╝рдХрд░-рдХреЗрд╡рд▓ рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рдХреЛрдб рдХрд╛ рдЯреБрдХрдбрд╝рд╛ред
try:
11. рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕реВрдЪреА, рдЖрдИрдбреА, рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреНрд▓рд╛рд╕рд┐рдХ рдЖрдИрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░реЗрдВ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕реВрдЪреА рд╡рд░реНрдЧ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдкрдиреА IDE рдореЗрдВ PyLint рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдмрддрд╛рддрд╛ рд╣реИред
def list(id=DEFAULT_ID, type=TYPES.ANY_TYPE): """ W0622 Redefining built-in "id" [pylint] """ return Item.objects.filter(id=id, item_type=type)
рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
def list(id=None): print(__builtins__.id(list))
12. рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб, рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ ... рдЖрдкрдХреЗ рд▓рд┐рдП ... рд▓реЗрдХрд┐рди mod2.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрдиреНрдп рдбреЗрд╡рд▓рдкрд░ рдпрд╣ рджреЗрдЦрдХрд░ рдмрд╣реБрдд рд╣реИрд░рд╛рди рд╣реЛрдЧрд╛ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЕрдЪрд╛рдирдХ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдРрд╕реА рдХрд╛рд░реНрд░рд╡рд╛рдЗрдпреЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ, рдпрд╛ рдХрдо рд╕реЗ рдХрдо рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП mod2.py рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╢реБрд░реВ рдХрд░реЗрдВред рдлрд┐рд░, mod2.py рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред
UPD:
рд▓реЗрдЧрд╛ рд╕реЗ рдПрдХ рд╡рд┐рд╖рдп рдкрд░ рдПрдХ рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ:
рдкрд╛рдпрдерди рдХреА рдЫрд┐рдкреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВрдкреБрдирд╢реНрдЪ: рдЖрд▓реЛрдЪрдирд╛, рдЯрд┐рдкреНрдкрдгреА, рдкрд░рд┐рд╡рд░реНрдзрди рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред