Python Language Features Summary

26
 PYTHON LANGUAGE SUMMARY - Everythi ng in Python is an Object. - Objects are Garbage-Collected - Pickle Example o  D = {'a': 1 '!': "# $$$ % = &pe(')a*a+le,pkl' '!'. $$$ imp&/* pickle $$$ pickle,)0mp(D %. Pickle a2 &!3ec* *& +le $$$ % ,cl&4e(. - S5e l6e4 4a6e &!3 ec* !2 ke 2 , S5 el7 examp le: - P2*5& i4 a frst-class object model : E6e/2*5i8 i4 a & !3ec*, %&/ ex 70c*i& &!3ec*4 ma2 !e a44i8e) *& &*5e/ ame4 pa44e) *& &*5e/ 70c*i&4 /e*0/e) 7/&m &*5e/ 70c*i&4 e*c, Oe ca a**ac5 a/!i*/a/2 e a**/i!0*e4 *& a2 &!3ec*, Ex: De7 7(.: pa44 i4 a !lak 70c*i& &!3ec*, 9 c&0l) a)) 7,a = " a) i* &0l) !e le8al - P2* 5& 4*a ) a/ ) l i! /a/2 glob all&4 *& 8e* )i/ec*&/2 li4*i84 i P2*5& c&)e,

description

A short summary of the features of the Python language.

Transcript of Python Language Features Summary

Page 1: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 1/26

PYTHON LANGUAGE SUMMARY- Everything in Python is an Object.- Objects are Garbage-Collected- Pickle Example

o  D = {'a': 1 '!': "#$$$ % = &pe(')a*a+le,pkl' '!'.$$$ imp&/* pickle$$$ pickle,)0mp(D %. Pickle a2 &!3ec* *& +le$$$ %,cl&4e(.

- S5el6e4 4a6e &!3ec* !2 ke2, S5el7 example:

- P2*5& i4 a frst-class object model : E6e/2*5i8 i4 a &!3ec*, %&/ ex 70c*i&

&!3ec*4 ma2 !e a44i8e) *& &*5e/ ame4 pa44e) *& &*5e/ 70c*i&4 /e*0/e) 7/&m

&*5e/ 70c*i&4 e*c, Oe ca a**ac5 a/!i*/a/2 e a**/i!0*e4 *& a2 &!3ec*,Ex:De7 7(.: pa44 i4 a !lak 70c*i& &!3ec*,9 c&0l) a)) 7,a = " a) i* &0l) !e le8al

- P2*5& 4*a)a/) li!/a/2 glob all&4 *& 8e* )i/ec*&/2 li4*i84 i P2*5& c&)e,

Page 2: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 2/26

DATA TYPES

- 9mm0*a!le Da*a T2pe4 ; <a&* !e c5a8e) i place ; S*/i84 N0m!e/4 a)

 T0ple4- M0*a!le )a*a *2pe4 ; Li4*4 Dic*i&a/ie4 a) Se*4 (cla44e4 a) i4*ace4 *&&.- S5a/e) /e7e/ece4 ca !e a p/&!lem &/ a44e/ 7&/ m0*a!le )a*a *2pe4 !eca04e

c&pie4 a/e &* 8ee/a*e) !2 )e7a0l*,- )i/(S. ; Gee/a*e4 a li4* &7 all *2pe a**/i!0*e4- 5elp(S. ; Al4& 8i6e4 )&c0me*a*i&- (map(70cL.. map applie4 *5e 70c*i& 70c *& all eleme*4 &7 L a) /e*0/4 a

i*e/a!le- S&/*e)(x. ; 9-!0il* 70c*i& 7&/ 4&/*i8 )a*a- Se0ece4 ; A p&4i*i&all2 &/)e/e) c&llec*i& &7 &*5e/ &!3ec*4, S*/i84 Li4*4 a)

 T0ple4- T2pe(L. - Re*0/4 *5e *2pe- 94i4*ace(&!3ec**2pe. ; <5eck i7 &!3ec* i4 &7 *2pe- >==? &pe/a*&/ *e4*4 6al0e e0i6alece- >i4? &pe/a*&/ *e4*4 i)e*i*2

STR9NGS

o S = Le(>*e4*?. Le8*5 &7 4*/i8o S @ Repea* S *ime4,o SBC e/&-!a4e) p&4i*i&o SB- -7/&m-la4* i*emo SB1: Slici8 ; D&e4 &* icl0)e *5 i*em,o

SB: E6e/2*5i8o SB:-1 All !0* la4*o S F S <&ca*ea*i&o L = li4*(S. Expa) i*& a li4*o -,3&i(L. &i eleme*4 i li4* L i*5 - 4epa/a*&/o S,+)(e4I. %i) &J4e* &7 a 40!4*/i8 i So S,/eplace(e4II/&I.o S,4pli*(I. Spli*4 *5e 4*/i8 a* Io S,/4*/ip /em&6e /i85*-5a) 4i)e 5i*e4pace c5a/ac*e/4o S,i4)i8i*(.o S,l&e/(. ca4e c&6e/4i&o S,ec&)e Uic&)e 7&/ma**i8o

S,)ec&)e Uic&)e )ec&)i8o Si8le 0&*e4: '4paKm'o D&0!le 0&*e4: K4pa'mK

Page 3: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 3/26

o  T/iple 0&*e4: ''',,, 4pam ,,,''' KKK,,, 4pam ,,,KKK l&ck c&mme*4o E4cape 4e0ece4: K4*paCmKo m2+le = &pe(/'<:e*ex*,)a*' ''. /I i)ica*e4 /a 4*/i8, 9*

40pp/e44e4 e4cape4o '(*2.) m&/e (7&&).4' {'*2': 1 '7&&)': '4pam'# Dic*i&a/2

!a4e) 7&/ma**i8o %&/ma**i8 Me*5&)4

 *empla*e = '{m&**&# {p&/k# a) {7&&)#' 2 ke2&/)

 *empla*e,7&/ma*(m&**&='4pam' p&/k='5am' 7&&)='e884'.'4pam 5am a) e884'

L9STS

o Upacki8 a li4*:x = (BB1"QB1C111"11.a! = xa i4 *5e +/4* /& ! i4 *5e 4ec&) /&

o

Simila/ *& 4*/i84 7&/ 4lici8 le8*5 e*co L,appe)(x2I.o L,p&p(". Dele*e) eleme* a* p&4i*i& " )e7a0l* 6al0e -1o L,ex*e)(B.o Li4*(/e6e/4e)(L..o L,/em&6e(4pamI. /em&6e !2 6al0eo L,c&0*(.o Del LBC Dele*e &e i*em

<OMPREHENS9ONS

o Bx@@" 7&/ x i M i7 x " == C

M i4 a i*e/a!le

D9<T9ONAR9ES

o Se0ece &pe/a*i&4 )& &* &/ko A44i8i8 *& e i)ice4 a))4 e*/ie4o e24 ca !e a2*5i8 &* 304* 4*/i84o 9i*ialia*i&

D = {7&&)I:I!aaaII6e5icleI:Ica/I#

D = )ic*(7&&) = !aaaI 6e5icle=Ica/I.

D = )ic*(ip(B7&&)II6e5icleIB!aaaIIca/I..

o DB7&&)I *& i)ex !aaao <a e4* )a*a *2pe4 ; Li4*4 &7 )ic*i&a/ie4, Dic*i&a/2 i*5 li4*4 i)exe) !2

4*/i84, A2 &/)e/ i4 le8alo 7&&)I i D Sea/c5i8 i*5 ke2o D,ke24(. li4*4 all ke24o D,4&/*(. S&/* all ke24o D = )ic*,7/&mke24(B'ame' 'a8e'.o D,i*em4(.o D,c&p2(. <&p2 *&p-le6elo D,clea/(. Rem&6e all i*em4o D,8e*(ke2 )e7a0l*V. 7e*c5 !2 ke2 7 a!4e* )e7a0l*o D,p&p(ke2 )e7a0l*.o Le(D.o Del DBke2o D,6ieke24(. D,6ie6al0e4(.

Page 4: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 4/26

o D = {x:x@" 7&/ x i /a8e(1C.# Dic*i&a/2 c&mp/e5e4i&

LOOPS

o %&/ x i >4pam?:o

W5ile (x$C.

 TUPLES

o O/)e/e) c&llec*i& &7 a/!i*/a/2 &!3ec*4o Acce44e) !2 &J4e*o 9mm0*a!le Se0eceo %ixe) le8*5 5e*e/&8ee&04 a) a/!i*/a/il2 e4*a!leo  T5e2 a/e !a4icall2 a//a24 &7 &!3ec* /e7e/ece4o <&mma 4epa/a*e) exp/e44i&4 /e40l*4 i *0ple4o  T0ple(L. ; </ea*e a *0ple 7/&m a&*5e/ 4e0ece *2pe,o  T = (1".o Le(T.o  T F (Q. <&ca*ea*i&o (1". @ Repe*i*i&o  T,i)ex(. Gi6e4 i)ex &7 *5e e*/2 5&4e 6al0e i4 o  T,c&0*(. <&0* &cc0//ece4 &7

%9LES

o %ile i*e/a*&/4 a/e !e4* 7&/ /ea)i8 lie4o <&*e* i4 4*/i8 &* &!3ec*4o %ile4 a/e !0Je/e) a) 4eeka!leo <l&4e i4 &7*e &p*i&a: a0*&-cl&4e & c&llec*i&o &0*p0* = &pe(/'<:4pam' ''. </ea*e &0*p0* +le ('' mea4 /i*e.o ip0* = &pe(')a*a' '/'. </ea*e ip0* +le ('/' mea4 /ea).o ip0* = &pe(')a*a'. Same a4 p/i&/ lie ('/' i4 *5e )e7a0l*.o aS*/i8 = ip0*,/ea)(. Rea) e*i/e +le i*& a 4i8le 4*/i8o aS*/i8 = ip0*,/ea)(N. Rea) 0p *& ex* N c5a/ac*e/4 (&/

!2*e4. i*& a 4*/i8o aS*/i8 = ip0*,/ea)lie(. Rea) ex* lie (icl0)i8 elie. i*& a

4*/i8o aLi4* = ip0*,/ea)lie4(. Rea) e*i/e +le i*& li4* &7 lie 4*/i84

(i*5 .o &0*p0*,/i*e(aS*/i8. W/i*e a 4*/i8 &7 c5a/ac*e/4 (&/

!2*e4. i*& +leo &0*p0*,/i*elie4(aLi4*. W/i*e all lie 4*/i84 i a li4* i*& +leo &0*p0*,cl&4e(. Ma0al cl&4e ()&e 7&/ 2&0 5e +le

i4 c&llec*e).o &0*p0*,X045(. %l045 &0*p0* !0Je/ *& )i4k i*5&0* cl&4i8o a2%ile,4eek(N. <5a8e +le p&4i*i& *& &J4e* N 7&/

ex* &pe/a*i&o 7&/ lie i &pe(')a*a'.: 04e lie %ile i*e/a*&/4 /ea) lie !2

lieo &pe('7,*x*' ec&)i8='la*i-1'. P2*5& , Uic&)e *ex* +le4 (4*/

4*/i84.o &pe('7,!i' '/!'. P2*5& , !2*e4 +le4 (!2*e4 4*/i84.

o c&)ec4,&pe('7,*x*' ec&)i8='0*7'. P2*5& ", Uic&)e *ex* +le4(0ic&)e 4*/i84.

Page 5: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 5/26

o &pe('7,!i' '/!'. P2*5& ", !2*e4 +le4 (4*/ 4*/i84.

SETS

o <a &l2 c&*ai imm0*a!le )a*a *2pe4o

Se*4 )& &* 5a6e )0plica*e4 L = B11"

Se*(L. 8i6e4 {1"#

Li4*(4e*(L.. 8i6e4 B1"o = 4e*{4pamI#o = {4IIpIIaIImI# &*5 a/e e0i6ale*o Z Y 9*e/4ec*i&o [ Y Ui&o ; Y )iJe/ece i eleme* mem!e/45ipo $ Y 40pe/4e* *e4*o { @@ " 7&/ i B1 " # Se* c&mp/e5e4i&4o  li4*(4e*(B1 " 1 1.. Rem&6e )0plica*e4 (Ma2!e /e&/)e/e).

B1 " o  4e*('4pam'. - 4e*('5am'. )iJe/ece i c&llec*i&4

{'p' '4'#o  4e*('4pam'. == 4e*('a4mp'. O/)e/-e0*/al e0ali*2 *e4*

 T/0e

Page 6: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 6/26

Page 7: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 7/26

OPERATORS

- \Y ; <la44ic &/ */0e )i6i4i&- \\Y ; %l&&/ )i6i4i&- P2*5& 40pp&/*4 c&mplex 0m!e/4 a4 ell

o

-"3 F 1- E0me/a*e(. ; /e*0/4 a i*e/a*&/, <a make ce/*ai l&&p4 a !i* clea/e/,

e0me/a*e(*5i8. 5e/e *5i8 i4 ei*5e/ a i*e/a*&/ &/ a 4e0ece /e*0/4 a

i*e/a*&/ *5a* ill /e*0/ (C *5i8BC. (1 *5i8B1. (" *5i8B". a) 4& 7&/*5,

STATEE!TS

- Ra8e(1C. 8ee/a*e4 a i*e/a!le,- ]ip ; c/ea*e4 *0pe4- Map ; c/ea*e4 )ic*i&a/ie4- E0me/a*e(. ; 8ee/a*e4 a 8ee/a*&/ &!3ec*

-

Page 8: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 8/26

 T5e/e i4 a l&&p el4e c&4*/0c* 5e/e *5e el4e i4 5i* i7 *5e/e a4 & !/eak:

9TERAT9ON PROTO<OL

Page 9: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 9/26

A2 &!3ec* i*5 a ^^ex*^^ me*5&) 40pp&/*4 i*e/a*i& p/&*&c&l, 9* a0*&ma*icall2 a)6ace4

7&/ eac5 call, A i*e/a!le &!3ec* i4 c/ea*e) !2 ^^i*e/^^ call, ^^ex*^^ /ai4e4 S*&p9*e/a*i& a*

*5e e) &7 *5e 4e/ie4 &7 /e40l*4,

Ol) a2 *& /ea) a +le c&40me4 *&& m0c5 mem&/2:

 

9*e/a*&/ !a4e) me*5&) i4 m&/e mem&/2 e_cie*:

9-!0il* 70c*i&4: call ¿ ¿ ¿  /e4pec*i6el2, call c/ea*e4 a

&!3ec* i*5 a 70c*i& impleme*e) i i*, A +le &!3ec* i4 i*4 & i*e/a*&/, SO i* i4

&* ece44a/2 *& c/ea*e a i*e/a*&/ 7&/ i*, %&/ li4*4 i* i4 ece44a/2 *& c/ea*e a i*e/a!le

!eca04e *5e2 40pp&/* m0l*iple &pe i*e/a*i&4, O!3ec*4 *5a* a/e i*e/a!le /e*0/ *5e/e40l*4 &e a* a *ime a) &* all a* &ce i a p524ical li4*,

9TERALE OE<TS:

1, Dic*i&a/ie4 (i ,x.", S5el6e4, %ile4, Li4*

L9ST <OMPREHENS9ONS (S9M9LAR TE<HN9`UE %OR SET AND D9<T9ONARY

<OMPREHENS9ONS.

Page 10: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 10/26

1, 7 = &pe('4c/ip*",p2'.lie4 = 7,/ea)lie4(.Lie4 i4 a li4* = B'imp&/* 424' 'p/i*(424,pa*5.' 'x = "' 'p/i*(x @@ ".'

", <a 04e a c&)i*i&al >i7?lie4 = Blie,/4*/ip(. 7&/ lie i &pe('4c/ip*",p2'. i7 lieBC == 'p'

, <a 04e e4*e) >7&/ >

Bx F 2 7&/ x i 'a!c' 7&/ 2 i 'lm'

OTHER 9TERAT9ON <ONTETS

1, Map /e*0/4 a i*e/a!le &!3ec*

", T5e i!0il* 70c*i& 04e4 a i*e/a*i& p/&*&c&l,

, T&&l4 40c5 a4 a) , E6e *5e 4*/i8 me*5&) 04e4 a

i*e/a*i& p/&*&c&l,

, Se* a) Dic*i&a/2 c&mp/e5e4i&4 40pp&/* *5e ex*e)e) 42*ax &7 li4*c&mp/e5e4i&4,

, /e*0/4 a i*e/a!le i ,x,

Q, al4& /e*0/ a i*e/a!le i ,x,

, i4 &* i*4 & i*e/a*&/, 9* 5a4 *& !e c/ea*e),

DO<UMENTAT9ON

1, Di/ ; /e*0/4 li4* &7 all a**/i!0*e4 i a &!3ec*,", ^^)&c^^ - <&mme*4 c&)e) a* *5e *&p &7 m&)0le4 70c*i& cla44 4*a*eme*4 e*c

a/e a0*&ma*icall2 4*0Je) i*& *5e a**/i!0*e a) a/e calle) ,

"#!CT$O!S

1, De7 i4 a exec0*a!le c&)e,

", De7 c/ea*e4 a &!3ec* a) a44i84 i* a ame,, Lam!)a c/ea*e4 a &!3ec* !0* /e*0/4 i* a4 a /e40l*,, Re*0/ 4e)4 a /e40l* &!3ec* !ack *& *5e calle/,, Yiel) 4e)4 a /e40l* &!3ec* !ack *& *5e calle/ !0* /emem!e/4 5e/e *5e 70c*i&

le7* &7, U4e) i 8ee/a*&/4,Q, Gl&!al )ecla/e4 m&)0le-le6el 6a/ia!le4 *5a* a/e *& !e a44i8e),, N&l&cal )ecla/e4 ecl&4i8 70c*i& 6a/ia!le4 *5a* a/e *& !e a44i8e),, A/80me*4 a/e pa44e) !2 a44i8me* (&!3ec* /e7e/ece., A/80me*4 a/e pa44e) !2 p&4i*i& 0le44 i* i4 pa44e) !2 ke2&/)4,1C, A/80me*4 /e*0/ 6al0e4 a) 6a/ia!le4 a/e &* )ecla/e),11, <&)e i4i)e )e74 &* e6al0a*e) *ill *5e 70c*i&4 a/e calle), Ol2 a &!3ec* i4

c/ea*e),

S<OPE

Page 11: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 11/26

1, a/ia!le a44i8e) i4i)e a )e7 i4 local ", a/ia!le a44i8e) i a ecl&4i8 )e7 i4 nonlocal *& *5e e4*e) 70c*i&,, 97 a 6a/ia!le i4 a44i8e) &0*4i)e all *5e )e74 i* i4 global *& *5e e*i/e +le,

1, Ecl&4i8 m&)0le i4 a 8l&!al 4c&pe", Gl&!al 4c&pe 4pa4 a 4i8le +le &l2,, A44i8e) ame4 a/e l&cal 0le44 )ecla/e) &l&cal &/ 8l&!al,, Eac5 call *& a 70c*i& c/ea*e4 a e l&cal 4c&pe,

1, Name assignments c/ea*e &/ c5a8e l&cal ame4 !2 )e7a0l*,", Name references 4ea/c5 a* m&4* 7&0/ 4c&pe4: l&cal *5e ecl&4i8 70c*i&4 (i7

a2. *5e 8l&!al a) *5e !0il* i,, Name4 )ecla/e4 i 8l&!al &/ &l&cal 4*a*eme*4 ma a44i8e) ame4 *& ecl&4i8

m&)0le a) 70c*i& 4c&pe4 /e4pec*i6el2,

%A<TORY %UN<T9ONS: <LOSURES

%0c*i&4 ca /e*0/ 70c*i&4

%&/ example:

 def maker(N):

def action(X): # Make and return action

return X ** N # action retains N from enclosing scope

return action

<a al4& 04e lam!)a 70c*i&-c/ea*i& exp/e44i&4:

def maker(N):

return lambda X: X ** N # lambda functions retain state too

- &l&cal 6a/ia!le4 a/e &* all&e) a* m&)0le le6el,- N&*e *5a* m0*a!le &!3ec*4 a/e pa44e) !2 /e7e/ece, i) &7 like p&i*e/4 i <,

ARGUMENTS

- A 70c*i& ca /e*0/ m0l*iple 6al0e4 !2 packi8 *5em i a *0ple,- A/80me* ma*c5i8 6a/ia*i&4 a6aila!le -

o P&4i*i&al4 ; Ma*c5e4 7/&m le7* *& /i85*,o e2&/)4 ; Ma*c5 !2 a/80me* ameo De7a0l*4o a/a/84 c&llec*i8 ; a/!i*/a/il2 ma2 p&4i*i&al &/ ke2&/) a/80me*4o a/a/84 0packi8 ; pa44 a/!i*/a/il2 ma2 p&4i*i&al &/ ke2&/) a/80me*4

o e2&/)-&l2 a/80me*4 ; a/80me*4 *5a* m04* !e pa44e) !2 ame

Page 12: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 12/26

b 9 a 70c*i& call a/80me*4 m04* appea/ i *5i4 &/)e/: a2 p&4i*i&al a/80me*4

(6al0e. 7&ll&e) !2 a c&m!ia*i& &7 a2 ke2&/) a/80me*4 (ame=6al0e. a) *5e

@i*e/a!le 7&/m 7&ll&e) !2 *5e @@)ic* 7&/m,

b 9 a 70c*i& 5ea)e/ a/80me*4 m04* appea/ i *5i4 &/)e/: a2 &/mal a/80me*4

(ame. 7&ll&e) !2 a2 )e7a0l* a/80me*4 (ame=6al0e. 7&ll&e) !2 *5e @ame (&/@ i

,. 7&/m 7&ll&e) !2 a2 ame &/ ame=6al0e ke2&/)-&l2 a/80me*4 (i ,.

7&ll&e) !2 *5e @@ame 7&/m,

9 !&*5 *5e call a) 5ea)e/ *5e @@a/84 7&/m m04* appea/ la4* i7 p/e4e*

 T5e 4*ep4 *5a* P2*5& i*e/all2 ca//ie4 &0* *& ma*c5 a/80me*4 !e7&/e a44i8me* ca

/&085l2 !e )e4c/i!e) a4 7&ll&4:

1, A44i8 &ke2&/) a/80me*4 !2 p&4i*i&,

", A44i8 ke2&/) a/80me*4 !2 ma*c5i8 ame4,

, A44i8 ex*/a &ke2&/) a/80me*4 *& @ame *0ple,

, A44i8 ex*/a ke2&/) a/80me*4 *& @@ame )ic*i&a/2,

, A44i8 )e7a0l* 6al0e4 *& 0a44i8e) a/80me*4 i 5ea)e/,

We ca al4& 04e a @ c5a/ac*e/ !2 i*4el7 i *5e a/80me*4 li4* *& i)ica*e *5a* a 70c*i&

)&e4 &* accep* a 6a/ia!le-le8*5 a/80me* li4* !0* 4*ill expec*4 all a/80me*4 7&ll&i8

*5e @ *& !e pa44e) a4 ke2&/)4,

Ex:

)e7 k&l2(a @! c.:

p/i*(a ! c.

A) i*4 04a8e:

$$$ k&l2(1 c= !=".

Page 13: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 13/26

1 "

$$$ k&l2(c= !=" a=1.

1 "

$$$ k&l2(1 " .

 T2peE//&/: k&l2(. *ake4 1 p&4i*i&al a/80me* !0* e/e 8i6e

$$$ k&l2(1.

 T2peE//&/: k&l2(. mi44i8 " /e0i/e) ke2&/)-&l2 a/80me*4: '!' a) 'c'

Oe ca c/ea*e 70c*i& a&*a*i&4:

Ex :

>>> def func(a: 'spam' = 4 b: (! !") = c: $oat = %) &> int:

return a b c

>>> func(! c=!") # ! !" (keords ork normall)

!%

>>> func+,,annotations,, 

-'c': .class '$oat'> 'b': (! !") 'a': 'spam' 'return': .class 'int'>/

Page 14: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 14/26

LAMDA %UN<T9ON-EPRESS9ON

1, Lam!)a i4 a exp/e44i& &* a 4*a*eme*", Lam!)aI4 !&)2 i4 a 4i8le exp/e44i& &* a !l&ck &7 4*a*eme*4, N&*e *5a* *5e

7&ll&i8 i4 le8al,

)e7  +(.:  /e*0/ " 7k = lam!)a x: x F +(.p/i*(7k(..

, Lam!)a ca 5a6e )e7a0l*4,, Lam!)a4 ca !e e4*e) *&&, 0* *5e2 45&0l) !e i *5e 4ame lie,

MAP %9LTER AND REDU<E

- Map ; appl2 70c*i& *& all eleme*4 &7 a i*e/a!le,- %il*e/ ; appl2 +l*e/ *& a 4e0ece a) c/ea*e a i*e/a!le *5a* excl0)e4 *5e

eleme*4 *5a* )& &* pa44 *5e +l*e/

- Re)0ce ;applie4 a 70c*i& i*e/a*i6el2 *& a i*e/a!le *& /e*0/ a 4i8le cal0e,

GENERATOR %UN<T9ONS

- <&)e) a4 &/mal )e7 70c*i&4 !0* 04e 2iel) i4*ea) ; /e*ai4 4*a*e !e*ee call4,- Gee/a*&/ exp/e44i& ; li4* li4* c&mp/e5e4i&4 !0* 8ee/a*e4 /e40l* & )ema),

- Gee/a*&/ 70c*i&4A 70c*i& )e7 4*a*eme* *5a* c&*ai4 a 2iel) 4*a*eme* i4 *0/e) i*& a

8ee/a*&/ 70c*i&, W5e calle) i* /e*0/4 a e 8ee/a*&/ &!3ec* i*5 a0*&ma*ic

/e*e*i& &7 l&cal 4c&pe a) c&)e p&4i*i& a a0*&ma*icall2 c/ea*e) ^^i*e/^^

me*5&) *5a* 4impl2 /e*0/4 i*4el7 a) a a0*&ma*icall2 c/ea*e) ^^ex*^^ me*5&)

(ex* i ",. *5a* 4*a/*4 *5e 70c*i& &/ /e40me4 i* 5e/e i* la4* le7* &J a) /ai4e4S*&p9*e/a*i& 5e +i45e) p/&)0ci8 /e40l*4,

- Gee/a*&/ exp/e44i&4A c&mp/e5e4i& exp/e44i& ecl&4e) i pa/e*5e4e4 i4 k& a4 a 8ee/a*&/

exp/e44i&, W5e /0 i* /e*0/4 a e 8ee/a*&/ &!3ec* i*5 *5e 4ame

a0*&ma*icall2 c/ea*e) me*5&) i*e/7ace a) 4*a*e /e*e*i& a4 a 8ee/a*&/

70c*i& callI4 /e40l*4 di*5 a ^^i*e/^^ me*5&) *5a* 4impl2 /e*0/4 i*4el7 a) a

 ^ex*^^ me*5&) (ex* i ",. *5a* 4*a/*4 *5e implie) l&&p &/ /e40me4 i* 5e/e i*

la4* le7* &J a) /ai4e4 S*&p9*e/a*i& 5e +i45e) p/&)0ci8 /e40l*4,- Gee/a*&/4 (exp/e44i&4 a) 70c*i&4. a/e 4i8le i*e/a*i& &!3ec*4,

- Li4* &7 all c&mp/e5e4i& exp/e44i&4:

Page 15: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 15/26

 T9M9NG

OD#%ES

1, Eac5 m&)0le i4 a ame4pace", All&4 7&/ c&)e /e04e

, 9mpleme*4 45a/e4 4e/6ice &/ )a*a,, 9mp&/* ; 8e*4 *5e m&)0le &ce a4 a &!3ec*, 9* )&e4 &* /el&a) i* i*5 a&*5e/

imp&/* call, A explici* /el&a) call i4 /e0i/e), 9mp&/*e) m&)0le4 eleme*4 5a6e *&

!e acce44e) !2 *5e m&)0le ame,, %/&m x2 imp&/* a!c ; c/ea*e4 a l&cal c&p2 &7 a!c a) )&e4 &* /e*ai *5e m&)0le

i*4el7,

Q, M&)0le imp&/* p/&ce)0/e:

, T5e/e l&ca*i&4 *& 4ea/c5 i4 7&/m m&)0le 4ea/c5 pa*5 5ic5 i4 4e* !2 pa/ame*e/4

; Re7e/ *& )&c0me*a*i& 7&/ m&/e )e*ail4,

Page 16: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 16/26

, <&mpile) m&)0le4 4a6e) a4 ,p2c +le4,&. !ote that altho'gh (ro) co*ies the val'es+ shared val'es li,e )'tables

ill be aected i( they are changed./0.Co*ying a )'table list a list is done by %1 2 %/345. %1 2 %/ has both %1

and %/ *ointing to the sa)e object.11, ^^)ic*^^ = ame4pace )ic*i&a/2

a, li4*(m&)0le",̂ ^)ic*̂ ^,ke24(../1.<a&* acce44 ame4 i a&*5e/ m&)0le +le i*5&0* imp&/*i8 i*,/6.M&)0le le6el ame4pace e4*i8 7&ll&4 4imila/ /0le4 a4 a 4i8le +le ame4pace

e4*i8,

Page 17: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 17/26

OOPS

- S0pp&/*4 m0l*iple i5e/i*ace a) <&mp&4i*i&- Ope/a*&/ &6e/l&a)i8- Dec&/a*&/4- P/&pe/*ie4- Me*acla44e4

- &0) a) U!&0) O!3ec*4- Ne 4*2le cla44 m&)el,

1, <la44 4*a*eme* c/ea*e4 a e cla44 &!3ec* a) a44i84 i* a ame, 9 e-4*2le

cla44 a cla44 &!3ec* 5a4 *5e 40pe/ cla44 *2pe,", A44i8me*4 i4i)e cla44 4*a*eme*4 make cla44 a**/i!0*e4,, <la44 a**/i!0*e4 p/&6i)e &!3ec* 4*a*e a) !e5a6i&/,, Class objects de7ne de(a'lt behavior., 94*ace &!3ec*4 a/e c&c/e*e i*em4,Q, <alli8 a cla44 &!3ec* like a 70c*i& c/ea*e4 a e i4*ace, T5e e i4*ace

i5e/i*4 cla44 a**/i!0*e4, Ule44 &e &7 *5e cla44 a**/i!0*e4 a/e explici*l2

m&)i+e) !2 *5e i4*ace i* c&*i0e4 *& /e7e/ *& *5e cla44 a**/i!0*e4,

%&/ ex:<la44 a: = 1

= a(.a,x = "p/i*(!,x. *5i4 p/i*4 "

0* !,x = a,x = 1p/i*(!,x. *5i4 p/i*4 , T5i4 i4 !eca04e ! & 5a4 i*4 & c&p2 &7 x,

, A44i8me*4 *& a**/i!0*e4 i 4el7 make pe/-i4*ace a**/i!0*e4, T5i4 mea4 *5a*

*5e4e a**/i!0*e4 !e5a6e like *5e 4ec&) example i p&i* Q a!&6e,

, <la44e4 a/e a**/i!0*e4 i m&)el4,, <la44e4 ca i*e/cep* p2*5& &pe/a*&/4 = Ope/a*&/ &6e/l&a)i8,

Page 18: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 18/26

a, Me*5&)4 ame4 i*5 )&0!le 0)e/4c&/e4 a/e 4pecial 5&&k4,!, S0c5 me*5&)4 a/e calle) a0*&ma*icall2 5e i4*ace4 appea/4 i !0il*-

i &pe/a*i&4,c, <la44e4 ma2 &6e//i)e m&4e !0il*-i *2pe &pe/a*i&4,), T5e/e a/e & )e7a0l*4 7&/ &pe/a*&/ &6e/l&a)i8 me*5&)4 a) &e a/e

/e0i/e),

e, Ne-4*2le cla44e4 5a6e 4&me )e7a0l*4 !0* &* 7&/ c&mm& &pe/a*i&4,7, Ope/a*&/4 all& cla44e4 *& i*e8/a*e i*5 P2*5&I4 &!3ec* m&)el,

1C, Ecap40la*i& ; W/appi8 0p &pe/a*i&4 !e5i) i*e/7ace4 40c5 *5a* a

&pe/a*i& i4 &l2 c&)e) &ce,11, <alli8 40pe/cla44 c&4*/0c*&/4,

a, <a 04e 40pe/, e2&/), N&* /eall2 p/e)ic*a!le 5e *5e/e a/e m0l*iple

40pe/cla44e4 !eca04e *5e MRO i5e/i*ace m&)el mi85* c5a8e,!, <a 4impl2 call *5e 40pe/cla44 me*5&)4 !2 ame, T5i4 i4 a m0c5 !e**e/

app/&ac5,1", 95e/i*ace

1, A!4*/ac* S0pe/cla44, 9 *5e example !el& ac*i& i4 &* )e+e) i*5 *5e cla44

ame4 S0pe/, 9* i4 le7* *& *5e cla44 ame4 40! *& )e+e i*, 9* *5e 70c*i& i4

i6&ke) i*5&0* )e+i8 i* e//&/ /e40l*4, 0* &!3ec* c/ea*i& )&e4 &/k, 9 *5e

7&ll&i8 c&)e &l2 !,)ele8a*e(. 7ail4,

cla44 40pe/:

  )e7  )ele8a*e(4el7 .:

  4el7 ,ac*i&(.

cla44 40!1(40pe/.:

  )e7  ac*i&(4el7 .:

  p/i*(K5e/eK.

cla44 40!"(40pe/.: pa44

a = 40!1(.

! = 40!"(.

a,)ele8a*e(.

!,)ele8a*e(.

1, N&*e *5a* p&i* 1 ca al4& !e )&e i*5 )ec&/a*&/4, 0* 5e )&e i*5

)ec&/a*&/4 e6e i4*a*ia*i& 7ail4 0le44 all me*5&)4 a/e )e+e),

Page 19: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 19/26

NEW STYLE <LASS <HANGES

1, A**/i!0*e 7e*c5 7&/ !0il*-i4: i4*ace 4kippe) ^^8e*a**/^^ a) ^^8e*a**/i!*0e^^ a/e &* a0*&ma*icall2 calle) !2 !0il*-i &pe/a*i&4

7&/ ^^^^ &pe/a*&/ &6e/l&a)e) me*5&)4, T5e 4ea/c5 7&/ *5e ame !e8i4 a* cla44e4

a) &* i4*ace4, Acce44e4 !2 explici* ame4 8& *& *5e i4*ace4,", <la44e4 a) *2pe4 me/8e): *2pe *e4*i8<la44e4 a/e &!3ec*4 &7 >*2pe?,Al4& all !a4ic )a*a *2pe4 ca & !e 40!-cla44e),All cla44e4 )e/i6e 7/&m >&!3ec*?,

, A0*&ma*ic &!3ec* /&&* cla44: )e7a0l*4, 95e/i*ace 4ea/c5 &/)e/: MRO a) )iam&)4,, 95e/i*ace al8&/i*5m4Q, Ne *&&l4

a, Sl&*4 ; 4peci+e4 *5e &l2 a**/i!0*e4 *5a* ca !e 04e) i a cla44!, P/&pe/*ie4 ; Like )ec&/a*&/4, p/&pe/*2 )e+e4 *5e 8e* 4e* )ele*e a)

)&c,S2*ax ; a**/i!0*e = p/&pe/*2(78e* 74e*7)el)&c.

 T5e 4ame ca !e c&)e) i*5 )ec&/a*&/4 a4:

Page 20: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 20/26

N&*e *5a* 5e 4impl2 i6&ke4 i*5 p/&pe/*2 ke2 &/)4 *5e a**/i!0*e

!ec&me4 *5e 78e* p/&pe/*2 7&/ *5e a**/i!0*e, 9 *5e a!&6e example i*

!ec&me4 a p/&pe/*2 &7 *5e ame a**/i!0*e,

c, De4c/ip*&/ ; Al*e/a*e a2 *& i*e/cep* a**/i!0*e acce44, P/&pe/*ie4 a)4l&*4 a/e /eall2 304* a ki) &7 )e4c/ip*&/,De4c/ip*&/4 a/e c&)e) a4 i)epe)e* cla44e4 a) p/&6i)e 4peciall2 ame4

acce44&/ me*5&)4 7&/ *5a a**/i!0*e acce44 &pe/a*i&4 *5a* *5e2 i45 *&

i*e/cep*,Ge* 4e* a) )ele*i& me*5&)4 i *5e )e4c/ip*&/ cla44 a/e a0*&ma*icall2 *0

5e *5e a**/i!0*e a44i8e) *& *5e )e4c/ip*&/ cla44 i4*ace i4 acce44e),

N&*e *5a* all 8e* 4e* a) )ele*i& me*5&)4 ee) &* !e 4peci+e), P/e4ece

&7 a2 &e make4 i* a )e4c/ip*&/,

Page 21: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 21/26

A !e**e/ example:

), S0pe/ ; like 40pe/ i 424*em6e/il&8,e, ^^8e*a**/i!0*e^^ me*5&)

OPERATOR OERLOAD9NG

Page 22: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 22/26

1, ^^ii*̂ ^ - <&4*/0c*&/ 70c*i&", ^^!a4e4^^ - Li4*4 all *5e 40pe/cla44e4,, i4*ace,^^cla44^^,̂ ^ame^^ = O0*p0*4 ame &7 *5e cla44 &+4*ace, i4*ace,̂ ^)ic*̂ ^,ke24(., ^^8e*a**/^^ = calle) 5e a4ki8 7&/ 0)e+e) a**/i!0*e4Q, ^^4e*a**/ = calle) 5e 4e**i8 all a**/i!*0e4, ^^8e*a**/i!0*e^^ = calli8 5e a4ki8 7&/ a2 a**/i!0*e4

NAME MANGL9NG

97 a**/i!0*e4 a/e p/e+xe) !2 *& 0)e/4c&/e4 p2*5& a0*&ma*icall2 p/e+xe4 i* i*5 *5e

cla44 ame, T5i4 i4 04e70l 5e e a* *5e 6a/ia!le ame4 *& !e cla44^4peci+c, ^^

!ec&me4 ^^<^^

Page 23: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 23/26

OUND AND UNOUND METHODS

UNOUND (<LASS. METHOD OE<TS: NO SEL%

Acce44i8 a 70c*i& a**/i!0*e &7 a cla44 !2 0ali72i8 *5e cla44 /e*0/4 a 0!&0)

me*5&) &!3ec*, T& call *5e me*5&) 2&0 m04* p/&6i)e a i4*ace &!3ec* explici*l2 a4 *5e

+/4* a/80me*, 9 P2*5& , a 0!&0) me*5&) i4 *5e 4ame a4 a 4imple 70c*i& a)

ca !e calle) *5/&085 *5e cla44I4 ame i ", i*I4 a )i4*ic* *2pe a) ca&* !e calle)

i*5&0* p/&6i)i8 a i4*ace,

OUND (9NSTAN<E. METHOD OE<TS: SEL% F %UN<T9ON PA9RS

Acce44i8 a 70c*i& a**/i!0*e &7 a cla44 !2 0ali72i8 a i4*ace /e*0/4 a !&0)

me*5&) &!3ec*, P2*5& a0*&ma*icall2 packa8e4 *5e i4*ace i*5 *5e 70c*i& i *5e

!&0) me*5&) &!3ec* 4& 2&0 )&I* ee) *& pa44 a i4*ace *& call *5e me*5&),

%UN<T9ON DE<ORATORS

A )ec&/a*&/ i4 a calla!le *5a* /e*0/4 a calla!le, A )ec&/a*&/ ca !e a2 *2pe &7 calla!le

*5a* /e*0/4 a calla!le, N&*e *5a* cla44e4 70c*i&4 8ee/a*&/4 ca /e*0/ i*em4,

Dec&/a*&/4 al4& 40pp&/* e4*i8,

Example 7&/ Ne4*i8:

Ex :

)e7  p/&pme*5&)(70c.:

  p/i*(K5e/eK.

Page 24: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 24/26

  /e*0/ 70c

cla44 40pe/:

  p/&pme*5&)

  )e7  )ele8a*e(4el7 a.:

  p/i*(K5e/e)Ka.

a = 40pe/(.

a,)ele8a*e(.

<LASS DE<ORATORS

 T5i4 i4 4imila/ *& 70c*i& )ec&/a*&/4 !0* maa8e4 i4*ace4 c/ea*e) 7/&m *5e cla44,

Page 25: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 25/26

 T5e 7&ll&i8 i4 le8al *&&:

Page 26: Python Language Features Summary

7/18/2019 Python Language Features Summary

http://slidepdf.com/reader/full/python-language-features-summary 26/26

 T5e 4ame 70c*i&ali*2 ca !e impleme*e) 04i8 70c*i&4, N&*e *5a* 5e )e+e)

)ec&/a*&/4 c/ea*e a &!3ec*, W5e *5e &!3ec* i4 40!4e0e*l2 calle) *5e e p/&pe/*ie4

a/e applie),