home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Tools / Languages / Python 1.1 / Doc / libfuncs.tex < prev    next >
LaTeX Document  |  1994-08-16  |  16.9 KB  |  [TEXT/R*ch]

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: LaTeX Document (document/latex).

You can browse this item here: libfuncs.tex

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert LaTeX Document (document/latex) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file LaTeX document text default
99% file LaTeX document, ASCII text, with CR line terminators default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/281 LaTeX (Subdocument) default
100% detectItEasy Format: plain text[CR] default (weak)


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[R*ch]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 5c 73 65 63 74 69 6f 6e | 7b 42 75 69 6c 74 2d 69 |\section|{Built-i|
|00000010| 6e 20 46 75 6e 63 74 69 | 6f 6e 73 7d 0d 0d 54 68 |n Functi|ons}..Th|
|00000020| 65 20 50 79 74 68 6f 6e | 20 69 6e 74 65 72 70 72 |e Python| interpr|
|00000030| 65 74 65 72 20 68 61 73 | 20 61 20 6e 75 6d 62 65 |eter has| a numbe|
|00000040| 72 20 6f 66 20 66 75 6e | 63 74 69 6f 6e 73 20 62 |r of fun|ctions b|
|00000050| 75 69 6c 74 20 69 6e 74 | 6f 20 69 74 20 74 68 61 |uilt int|o it tha|
|00000060| 74 0d 61 72 65 20 61 6c | 77 61 79 73 20 61 76 61 |t.are al|ways ava|
|00000070| 69 6c 61 62 6c 65 2e 20 | 20 54 68 65 79 20 61 72 |ilable. | They ar|
|00000080| 65 20 6c 69 73 74 65 64 | 20 68 65 72 65 20 69 6e |e listed| here in|
|00000090| 20 61 6c 70 68 61 62 65 | 74 69 63 61 6c 20 6f 72 | alphabe|tical or|
|000000a0| 64 65 72 2e 0d 0d 0d 5c | 72 65 6e 65 77 63 6f 6d |der....\|renewcom|
|000000b0| 6d 61 6e 64 7b 5c 69 6e | 64 65 78 73 75 62 69 74 |mand{\in|dexsubit|
|000000c0| 65 6d 7d 7b 28 62 75 69 | 6c 74 2d 69 6e 20 66 75 |em}{(bui|lt-in fu|
|000000d0| 6e 63 74 69 6f 6e 29 7d | 0d 5c 62 65 67 69 6e 7b |nction)}|.\begin{|
|000000e0| 66 75 6e 63 64 65 73 63 | 7d 7b 61 62 73 7d 7b 78 |funcdesc|}{abs}{x|
|000000f0| 7d 0d 20 20 52 65 74 75 | 72 6e 20 74 68 65 20 61 |}. Retu|rn the a|
|00000100| 62 73 6f 6c 75 74 65 20 | 76 61 6c 75 65 20 6f 66 |bsolute |value of|
|00000110| 20 61 20 6e 75 6d 62 65 | 72 2e 20 20 54 68 65 20 | a numbe|r. The |
|00000120| 61 72 67 75 6d 65 6e 74 | 20 6d 61 79 20 62 65 20 |argument| may be |
|00000130| 61 20 70 6c 61 69 6e 0d | 20 20 6f 72 20 6c 6f 6e |a plain.| or lon|
|00000140| 67 20 69 6e 74 65 67 65 | 72 20 6f 72 20 61 20 66 |g intege|r or a f|
|00000150| 6c 6f 61 74 69 6e 67 20 | 70 6f 69 6e 74 20 6e 75 |loating |point nu|
|00000160| 6d 62 65 72 2e 0d 5c 65 | 6e 64 7b 66 75 6e 63 64 |mber..\e|nd{funcd|
|00000170| 65 73 63 7d 0d 0d 5c 62 | 65 67 69 6e 7b 66 75 6e |esc}..\b|egin{fun|
|00000180| 63 64 65 73 63 7d 7b 61 | 70 70 6c 79 7d 7b 66 75 |cdesc}{a|pply}{fu|
|00000190| 6e 63 74 69 6f 6e 5c 2c | 20 61 72 67 73 7d 0d 54 |nction\,| args}.T|
|000001a0| 68 65 20 5c 76 61 72 7b | 66 75 6e 63 74 69 6f 6e |he \var{|function|
|000001b0| 7d 20 61 72 67 75 6d 65 | 6e 74 20 6d 75 73 74 20 |} argume|nt must |
|000001c0| 62 65 20 61 20 63 61 6c | 6c 61 62 6c 65 20 6f 62 |be a cal|lable ob|
|000001d0| 6a 65 63 74 20 28 61 20 | 75 73 65 72 2d 64 65 66 |ject (a |user-def|
|000001e0| 69 6e 65 64 20 6f 72 0d | 62 75 69 6c 74 2d 69 6e |ined or.|built-in|
|000001f0| 20 66 75 6e 63 74 69 6f | 6e 20 6f 72 20 6d 65 74 | functio|n or met|
|00000200| 68 6f 64 2c 20 6f 72 20 | 61 20 63 6c 61 73 73 20 |hod, or |a class |
|00000210| 6f 62 6a 65 63 74 29 20 | 61 6e 64 20 74 68 65 20 |object) |and the |
|00000220| 5c 76 61 72 7b 61 72 67 | 73 7d 0d 61 72 67 75 6d |\var{arg|s}.argum|
|00000230| 65 6e 74 20 6d 75 73 74 | 20 62 65 20 61 20 74 75 |ent must| be a tu|
|00000240| 70 6c 65 2e 20 20 54 68 | 65 20 5c 76 61 72 7b 66 |ple. Th|e \var{f|
|00000250| 75 6e 63 74 69 6f 6e 7d | 20 69 73 20 63 61 6c 6c |unction}| is call|
|00000260| 65 64 20 77 69 74 68 0d | 5c 76 61 72 7b 61 72 67 |ed with.|\var{arg|
|00000270| 73 7d 20 61 73 20 61 72 | 67 75 6d 65 6e 74 20 6c |s} as ar|gument l|
|00000280| 69 73 74 3b 20 74 68 65 | 20 6e 75 6d 62 65 72 20 |ist; the| number |
|00000290| 6f 66 20 61 72 67 75 6d | 65 6e 74 73 20 69 73 20 |of argum|ents is |
|000002a0| 74 68 65 20 74 68 65 20 | 6c 65 6e 67 74 68 0d 6f |the the |length.o|
|000002b0| 66 20 74 68 65 20 74 75 | 70 6c 65 2e 20 20 28 54 |f the tu|ple. (T|
|000002c0| 68 69 73 20 69 73 20 64 | 69 66 66 65 72 65 6e 74 |his is d|ifferent|
|000002d0| 20 66 72 6f 6d 20 6a 75 | 73 74 20 63 61 6c 6c 69 | from ju|st calli|
|000002e0| 6e 67 0d 5c 63 6f 64 65 | 7b 5c 76 61 72 7b 66 75 |ng.\code|{\var{fu|
|000002f0| 6e 63 7d 28 5c 76 61 72 | 7b 61 72 67 73 7d 29 7d |nc}(\var|{args})}|
|00000300| 2c 20 73 69 6e 63 65 20 | 69 6e 20 74 68 61 74 20 |, since |in that |
|00000310| 63 61 73 65 20 74 68 65 | 72 65 20 69 73 20 61 6c |case the|re is al|
|00000320| 77 61 79 73 0d 65 78 61 | 63 74 6c 79 20 6f 6e 65 |ways.exa|ctly one|
|00000330| 20 61 72 67 75 6d 65 6e | 74 2e 29 0d 5c 65 6e 64 | argumen|t.).\end|
|00000340| 7b 66 75 6e 63 64 65 73 | 63 7d 0d 0d 5c 62 65 67 |{funcdes|c}..\beg|
|00000350| 69 6e 7b 66 75 6e 63 64 | 65 73 63 7d 7b 63 68 72 |in{funcd|esc}{chr|
|00000360| 7d 7b 69 7d 0d 20 20 52 | 65 74 75 72 6e 20 61 20 |}{i}. R|eturn a |
|00000370| 73 74 72 69 6e 67 20 6f | 66 20 6f 6e 65 20 63 68 |string o|f one ch|
|00000380| 61 72 61 63 74 65 72 20 | 77 68 6f 73 65 20 5c 41 |aracter |whose \A|
|00000390| 53 43 49 49 7b 7d 20 63 | 6f 64 65 20 69 73 20 74 |SCII{} c|ode is t|
|000003a0| 68 65 20 69 6e 74 65 67 | 65 72 0d 20 20 5c 76 61 |he integ|er. \va|
|000003b0| 72 7b 69 7d 2c 20 65 2e | 67 2e 2c 20 5c 63 6f 64 |r{i}, e.|g., \cod|
|000003c0| 65 7b 63 68 72 28 39 37 | 29 7d 20 72 65 74 75 72 |e{chr(97|)} retur|
|000003d0| 6e 73 20 74 68 65 20 73 | 74 72 69 6e 67 20 5c 63 |ns the s|tring \c|
|000003e0| 6f 64 65 7b 27 61 27 7d | 2e 20 20 54 68 69 73 20 |ode{'a'}|. This |
|000003f0| 69 73 20 74 68 65 0d 20 | 20 69 6e 76 65 72 73 65 |is the. | inverse|
|00000400| 20 6f 66 20 5c 63 6f 64 | 65 7b 6f 72 64 28 29 7d | of \cod|e{ord()}|
|00000410| 2e 20 20 54 68 65 20 61 | 72 67 75 6d 65 6e 74 20 |. The a|rgument |
|00000420| 6d 75 73 74 20 62 65 20 | 69 6e 20 74 68 65 20 72 |must be |in the r|
|00000430| 61 6e 67 65 20 5b 30 2e | 2e 32 35 35 5d 2c 0d 20 |ange [0.|.255],. |
|00000440| 20 69 6e 63 6c 75 73 69 | 76 65 2e 0d 5c 65 6e 64 | inclusi|ve..\end|
|00000450| 7b 66 75 6e 63 64 65 73 | 63 7d 0d 0d 5c 62 65 67 |{funcdes|c}..\beg|
|00000460| 69 6e 7b 66 75 6e 63 64 | 65 73 63 7d 7b 63 6d 70 |in{funcd|esc}{cmp|
|00000470| 7d 7b 78 5c 2c 20 79 7d | 0d 20 20 43 6f 6d 70 61 |}{x\, y}|. Compa|
|00000480| 72 65 20 74 68 65 20 74 | 77 6f 20 6f 62 6a 65 63 |re the t|wo objec|
|00000490| 74 73 20 5c 76 61 72 7b | 78 7d 20 61 6e 64 20 5c |ts \var{|x} and \|
|000004a0| 76 61 72 7b 79 7d 20 61 | 6e 64 20 72 65 74 75 72 |var{y} a|nd retur|
|000004b0| 6e 20 61 6e 20 69 6e 74 | 65 67 65 72 0d 20 20 61 |n an int|eger. a|
|000004c0| 63 63 6f 72 64 69 6e 67 | 20 74 6f 20 74 68 65 20 |ccording| to the |
|000004d0| 6f 75 74 63 6f 6d 65 2e | 20 20 54 68 65 20 72 65 |outcome.| The re|
|000004e0| 74 75 72 6e 20 76 61 6c | 75 65 20 69 73 20 6e 65 |turn val|ue is ne|
|000004f0| 67 61 74 69 76 65 20 69 | 66 20 5c 63 6f 64 65 7b |gative i|f \code{|
|00000500| 5c 76 61 72 7b 78 7d 0d | 20 20 3c 20 5c 76 61 72 |\var{x}.| < \var|
|00000510| 7b 79 7d 7d 2c 20 7a 65 | 72 6f 20 69 66 20 5c 63 |{y}}, ze|ro if \c|
|00000520| 6f 64 65 7b 5c 76 61 72 | 7b 78 7d 20 3d 3d 20 5c |ode{\var|{x} == \|
|00000530| 76 61 72 7b 79 7d 7d 20 | 61 6e 64 20 73 74 72 69 |var{y}} |and stri|
|00000540| 63 74 6c 79 20 70 6f 73 | 69 74 69 76 65 20 69 66 |ctly pos|itive if|
|00000550| 0d 20 20 5c 63 6f 64 65 | 7b 5c 76 61 72 7b 78 7d |. \code|{\var{x}|
|00000560| 20 3e 20 5c 76 61 72 7b | 79 7d 7d 2e 0d 5c 65 6e | > \var{|y}}..\en|
|00000570| 64 7b 66 75 6e 63 64 65 | 73 63 7d 0d 0d 5c 62 65 |d{funcde|sc}..\be|
|00000580| 67 69 6e 7b 66 75 6e 63 | 64 65 73 63 7d 7b 63 6f |gin{func|desc}{co|
|00000590| 65 72 63 65 7d 7b 78 5c | 2c 20 79 7d 0d 20 20 52 |erce}{x\|, y}. R|
|000005a0| 65 74 75 72 6e 20 61 20 | 74 75 70 6c 65 20 63 6f |eturn a |tuple co|
|000005b0| 6e 73 69 73 74 69 6e 67 | 20 6f 66 20 74 68 65 20 |nsisting| of the |
|000005c0| 74 77 6f 20 6e 75 6d 65 | 72 69 63 20 61 72 67 75 |two nume|ric argu|
|000005d0| 6d 65 6e 74 73 20 63 6f | 6e 76 65 72 74 65 64 20 |ments co|nverted |
|000005e0| 74 6f 0d 20 20 61 20 63 | 6f 6d 6d 6f 6e 20 74 79 |to. a c|ommon ty|
|000005f0| 70 65 2c 20 75 73 69 6e | 67 20 74 68 65 20 73 61 |pe, usin|g the sa|
|00000600| 6d 65 20 72 75 6c 65 73 | 20 61 73 20 75 73 65 64 |me rules| as used|
|00000610| 20 62 79 20 61 72 69 74 | 68 6d 65 74 69 63 0d 20 | by arit|hmetic. |
|00000620| 20 6f 70 65 72 61 74 69 | 6f 6e 73 2e 0d 5c 65 6e | operati|ons..\en|
|00000630| 64 7b 66 75 6e 63 64 65 | 73 63 7d 0d 0d 5c 62 65 |d{funcde|sc}..\be|
|00000640| 67 69 6e 7b 66 75 6e 63 | 64 65 73 63 7d 7b 63 6f |gin{func|desc}{co|
|00000650| 6d 70 69 6c 65 7d 7b 73 | 74 72 69 6e 67 5c 2c 20 |mpile}{s|tring\, |
|00000660| 66 69 6c 65 6e 61 6d 65 | 5c 2c 20 6b 69 6e 64 7d |filename|\, kind}|
|00000670| 0d 20 20 43 6f 6d 70 69 | 6c 65 20 74 68 65 20 5c |. Compi|le the \|
|00000680| 76 61 72 7b 73 74 72 69 | 6e 67 7d 20 69 6e 74 6f |var{stri|ng} into|
|00000690| 20 61 20 63 6f 64 65 20 | 6f 62 6a 65 63 74 2e 20 | a code |object. |
|000006a0| 20 43 6f 64 65 20 6f 62 | 6a 65 63 74 73 20 63 61 | Code ob|jects ca|
|000006b0| 6e 20 62 65 0d 20 20 65 | 78 65 63 75 74 65 64 20 |n be. e|xecuted |
|000006c0| 62 79 20 61 20 5c 63 6f | 64 65 7b 65 78 65 63 28 |by a \co|de{exec(|
|000006d0| 29 7d 20 73 74 61 74 65 | 6d 65 6e 74 20 6f 72 20 |)} state|ment or |
|000006e0| 65 76 61 6c 75 61 74 65 | 64 20 62 79 20 61 20 63 |evaluate|d by a c|
|000006f0| 61 6c 6c 20 74 6f 0d 20 | 20 5c 63 6f 64 65 7b 65 |all to. | \code{e|
|00000700| 76 61 6c 28 29 7d 2e 20 | 20 54 68 65 20 5c 76 61 |val()}. | The \va|
|00000710| 72 7b 66 69 6c 65 6e 61 | 6d 65 7d 20 61 72 67 75 |r{filena|me} argu|
|00000720| 6d 65 6e 74 20 73 68 6f | 75 6c 64 0d 20 20 67 69 |ment sho|uld. gi|
|00000730| 76 65 20 74 68 65 20 66 | 69 6c 65 20 66 72 6f 6d |ve the f|ile from|
|00000740| 20 77 68 69 63 68 20 74 | 68 65 20 63 6f 64 65 20 | which t|he code |
|00000750| 77 61 73 20 72 65 61 64 | 3b 20 70 61 73 73 20 65 |was read|; pass e|
|00000760| 2e 67 2e 20 5c 63 6f 64 | 65 7b 27 3c 73 74 72 69 |.g. \cod|e{'<stri|
|00000770| 6e 67 3e 27 7d 0d 20 20 | 69 66 20 69 74 20 77 61 |ng>'}. |if it wa|
|00000780| 73 6e 27 74 20 72 65 61 | 64 20 66 72 6f 6d 20 61 |sn't rea|d from a|
|00000790| 20 66 69 6c 65 2e 20 20 | 54 68 65 20 5c 76 61 72 | file. |The \var|
|000007a0| 7b 6b 69 6e 64 7d 20 61 | 72 67 75 6d 65 6e 74 20 |{kind} a|rgument |
|000007b0| 73 70 65 63 69 66 69 65 | 73 0d 20 20 77 68 61 74 |specifie|s. what|
|000007c0| 20 6b 69 6e 64 20 6f 66 | 20 63 6f 64 65 20 6d 75 | kind of| code mu|
|000007d0| 73 74 20 62 65 20 63 6f | 6d 70 69 6c 65 64 3b 20 |st be co|mpiled; |
|000007e0| 69 74 20 63 61 6e 20 62 | 65 20 5c 63 6f 64 65 7b |it can b|e \code{|
|000007f0| 27 65 78 65 63 27 7d 20 | 69 66 0d 20 20 5c 76 61 |'exec'} |if. \va|
|00000800| 72 7b 73 74 72 69 6e 67 | 7d 20 63 6f 6e 73 69 73 |r{string|} consis|
|00000810| 74 73 20 6f 66 20 61 20 | 73 65 71 75 65 6e 63 65 |ts of a |sequence|
|00000820| 20 6f 66 20 73 74 61 74 | 65 6d 65 6e 74 73 2c 20 | of stat|ements, |
|00000830| 6f 72 20 5c 63 6f 64 65 | 7b 27 65 76 61 6c 27 7d |or \code|{'eval'}|
|00000840| 0d 20 20 69 66 20 69 74 | 20 63 6f 6e 73 69 73 74 |. if it| consist|
|00000850| 73 20 6f 66 20 61 20 73 | 69 6e 67 6c 65 20 65 78 |s of a s|ingle ex|
|00000860| 70 72 65 73 73 69 6f 6e | 2e 0d 5c 65 6e 64 7b 66 |pression|..\end{f|
|00000870| 75 6e 63 64 65 73 63 7d | 0d 0d 5c 62 65 67 69 6e |uncdesc}|..\begin|
|00000880| 7b 66 75 6e 63 64 65 73 | 63 7d 7b 64 65 6c 61 74 |{funcdes|c}{delat|
|00000890| 74 72 7d 7b 6f 62 6a 65 | 63 74 5c 2c 20 6e 61 6d |tr}{obje|ct\, nam|
|000008a0| 65 7d 0d 20 20 54 68 69 | 73 20 69 73 20 61 20 72 |e}. Thi|s is a r|
|000008b0| 65 6c 61 74 69 76 65 20 | 6f 66 20 5c 63 6f 64 65 |elative |of \code|
|000008c0| 7b 73 65 74 61 74 74 72 | 7d 2e 20 20 54 68 65 20 |{setattr|}. The |
|000008d0| 61 72 67 75 6d 65 6e 74 | 73 20 61 72 65 20 61 6e |argument|s are an|
|000008e0| 0d 20 20 6f 62 6a 65 63 | 74 20 61 6e 64 20 61 20 |. objec|t and a |
|000008f0| 73 74 72 69 6e 67 2e 20 | 20 54 68 65 20 73 74 72 |string. | The str|
|00000900| 69 6e 67 20 6d 75 73 74 | 20 62 65 20 74 68 65 20 |ing must| be the |
|00000910| 6e 61 6d 65 0d 20 20 6f | 66 20 6f 6e 65 20 6f 66 |name. o|f one of|
|00000920| 20 74 68 65 20 6f 62 6a | 65 63 74 27 73 20 61 74 | the obj|ect's at|
|00000930| 74 72 69 62 75 74 65 73 | 2e 20 20 54 68 65 20 66 |tributes|. The f|
|00000940| 75 6e 63 74 69 6f 6e 20 | 64 65 6c 65 74 65 73 0d |unction |deletes.|
|00000950| 20 20 74 68 65 20 6e 61 | 6d 65 64 20 61 74 74 72 | the na|med attr|
|00000960| 69 62 75 74 65 2c 20 70 | 72 6f 76 69 64 65 64 20 |ibute, p|rovided |
|00000970| 74 68 65 20 6f 62 6a 65 | 63 74 20 61 6c 6c 6f 77 |the obje|ct allow|
|00000980| 73 20 69 74 2e 20 20 46 | 6f 72 20 65 78 61 6d 70 |s it. F|or examp|
|00000990| 6c 65 2c 0d 20 20 5c 63 | 6f 64 65 7b 73 65 74 61 |le,. \c|ode{seta|
|000009a0| 74 74 72 28 5c 76 61 72 | 7b 78 7d 2c 20 27 5c 76 |ttr(\var|{x}, '\v|
|000009b0| 61 72 7b 66 6f 6f 62 61 | 72 7d 27 29 7d 20 69 73 |ar{fooba|r}')} is|
|000009c0| 20 65 71 75 69 76 61 6c | 65 6e 74 20 74 6f 0d 20 | equival|ent to. |
|000009d0| 20 5c 63 6f 64 65 7b 64 | 65 6c 20 5c 76 61 72 7b | \code{d|el \var{|
|000009e0| 78 7d 2e 5c 76 61 72 7b | 66 6f 6f 62 61 72 7d 7d |x}.\var{|foobar}}|
|000009f0| 2e 0d 5c 65 6e 64 7b 66 | 75 6e 63 64 65 73 63 7d |..\end{f|uncdesc}|
|00000a00| 0d 0d 5c 62 65 67 69 6e | 7b 66 75 6e 63 64 65 73 |..\begin|{funcdes|
|00000a10| 63 7d 7b 64 69 72 7d 7b | 7d 0d 20 20 57 69 74 68 |c}{dir}{|}. With|
|00000a20| 6f 75 74 20 61 72 67 75 | 6d 65 6e 74 73 2c 20 72 |out argu|ments, r|
|00000a30| 65 74 75 72 6e 20 74 68 | 65 20 6c 69 73 74 20 6f |eturn th|e list o|
|00000a40| 66 20 6e 61 6d 65 73 20 | 69 6e 20 74 68 65 20 63 |f names |in the c|
|00000a50| 75 72 72 65 6e 74 20 6c | 6f 63 61 6c 0d 20 20 73 |urrent l|ocal. s|
|00000a60| 79 6d 62 6f 6c 20 74 61 | 62 6c 65 2e 20 20 57 69 |ymbol ta|ble. Wi|
|00000a70| 74 68 20 61 20 6d 6f 64 | 75 6c 65 2c 20 63 6c 61 |th a mod|ule, cla|
|00000a80| 73 73 20 6f 72 20 63 6c | 61 73 73 20 69 6e 73 74 |ss or cl|ass inst|
|00000a90| 61 6e 63 65 20 6f 62 6a | 65 63 74 20 61 73 0d 20 |ance obj|ect as. |
|00000aa0| 20 61 72 67 75 6d 65 6e | 74 20 28 6f 72 20 61 6e | argumen|t (or an|
|00000ab0| 79 74 68 69 6e 67 20 65 | 6c 73 65 20 74 68 61 74 |ything e|lse that|
|00000ac0| 20 68 61 73 20 61 20 5c | 63 6f 64 65 7b 5f 5f 64 | has a \|code{__d|
|00000ad0| 69 63 74 5f 5f 7d 20 61 | 74 74 72 69 62 75 74 65 |ict__} a|ttribute|
|00000ae0| 29 2c 0d 20 20 72 65 74 | 75 72 6e 73 20 74 68 65 |),. ret|urns the|
|00000af0| 20 6c 69 73 74 20 6f 66 | 20 6e 61 6d 65 73 20 69 | list of| names i|
|00000b00| 6e 20 74 68 61 74 20 6f | 62 6a 65 63 74 27 73 20 |n that o|bject's |
|00000b10| 61 74 74 72 69 62 75 74 | 65 20 64 69 63 74 69 6f |attribut|e dictio|
|00000b20| 6e 61 72 79 2e 0d 20 20 | 54 68 65 20 72 65 73 75 |nary.. |The resu|
|00000b30| 6c 74 69 6e 67 20 6c 69 | 73 74 20 69 73 20 73 6f |lting li|st is so|
|00000b40| 72 74 65 64 2e 20 20 46 | 6f 72 20 65 78 61 6d 70 |rted. F|or examp|
|00000b50| 6c 65 3a 0d 0d 5c 62 63 | 6f 64 65 5c 62 65 67 69 |le:..\bc|ode\begi|
|00000b60| 6e 7b 76 65 72 62 61 74 | 69 6d 7d 0d 3e 3e 3e 20 |n{verbat|im}.>>> |
|00000b70| 69 6d 70 6f 72 74 20 73 | 79 73 0d 3e 3e 3e 20 64 |import s|ys.>>> d|
|00000b80| 69 72 28 29 0d 5b 27 73 | 79 73 27 5d 0d 3e 3e 3e |ir().['s|ys'].>>>|
|00000b90| 20 64 69 72 28 73 79 73 | 29 0d 5b 27 61 72 67 76 | dir(sys|).['argv|
|00000ba0| 27 2c 20 27 65 78 69 74 | 27 2c 20 27 6d 6f 64 75 |', 'exit|', 'modu|
|00000bb0| 6c 65 73 27 2c 20 27 70 | 61 74 68 27 2c 20 27 73 |les', 'p|ath', 's|
|00000bc0| 74 64 65 72 72 27 2c 20 | 27 73 74 64 69 6e 27 2c |tderr', |'stdin',|
|00000bd0| 20 27 73 74 64 6f 75 74 | 27 5d 0d 3e 3e 3e 20 0d | 'stdout|'].>>> .|
|00000be0| 5c 65 6e 64 7b 76 65 72 | 62 61 74 69 6d 7d 5c 65 |\end{ver|batim}\e|
|00000bf0| 63 6f 64 65 0d 5c 65 6e | 64 7b 66 75 6e 63 64 65 |code.\en|d{funcde|
|00000c00| 73 63 7d 0d 0d 5c 62 65 | 67 69 6e 7b 66 75 6e 63 |sc}..\be|gin{func|
|00000c10| 64 65 73 63 7d 7b 64 69 | 76 6d 6f 64 7d 7b 61 5c |desc}{di|vmod}{a\|
|00000c20| 2c 20 62 7d 0d 20 20 54 | 61 6b 65 20 74 77 6f 20 |, b}. T|ake two |
|00000c30| 6e 75 6d 62 65 72 73 20 | 61 73 20 61 72 67 75 6d |numbers |as argum|
|00000c40| 65 6e 74 73 20 61 6e 64 | 20 72 65 74 75 72 6e 20 |ents and| return |
|00000c50| 61 20 70 61 69 72 20 6f | 66 20 69 6e 74 65 67 65 |a pair o|f intege|
|00000c60| 72 73 0d 20 20 63 6f 6e | 73 69 73 74 69 6e 67 20 |rs. con|sisting |
|00000c70| 6f 66 20 74 68 65 69 72 | 20 69 6e 74 65 67 65 72 |of their| integer|
|00000c80| 20 71 75 6f 74 69 65 6e | 74 20 61 6e 64 20 72 65 | quotien|t and re|
|00000c90| 6d 61 69 6e 64 65 72 2e | 20 20 57 69 74 68 20 6d |mainder.| With m|
|00000ca0| 69 78 65 64 0d 20 20 6f | 70 65 72 61 6e 64 20 74 |ixed. o|perand t|
|00000cb0| 79 70 65 73 2c 20 74 68 | 65 20 72 75 6c 65 73 20 |ypes, th|e rules |
|00000cc0| 66 6f 72 20 62 69 6e 61 | 72 79 20 61 72 69 74 68 |for bina|ry arith|
|00000cd0| 6d 65 74 69 63 20 6f 70 | 65 72 61 74 6f 72 73 20 |metic op|erators |
|00000ce0| 61 70 70 6c 79 2e 20 20 | 46 6f 72 0d 20 20 70 6c |apply. |For. pl|
|00000cf0| 61 69 6e 20 61 6e 64 20 | 6c 6f 6e 67 20 69 6e 74 |ain and |long int|
|00000d00| 65 67 65 72 73 2c 20 74 | 68 65 20 72 65 73 75 6c |egers, t|he resul|
|00000d10| 74 20 69 73 20 74 68 65 | 20 73 61 6d 65 20 61 73 |t is the| same as|
|00000d20| 0d 20 20 5c 63 6f 64 65 | 7b 28 5c 76 61 72 7b 61 |. \code|{(\var{a|
|00000d30| 7d 20 2f 20 5c 76 61 72 | 7b 62 7d 2c 20 5c 76 61 |} / \var|{b}, \va|
|00000d40| 72 7b 61 7d 20 5c 25 7b | 7d 20 5c 76 61 72 7b 62 |r{a} \%{|} \var{b|
|00000d50| 7d 29 7d 2e 0d 20 20 46 | 6f 72 20 66 6c 6f 61 74 |})}.. F|or float|
|00000d60| 69 6e 67 20 70 6f 69 6e | 74 20 6e 75 6d 62 65 72 |ing poin|t number|
|00000d70| 73 20 74 68 65 20 72 65 | 73 75 6c 74 20 69 73 20 |s the re|sult is |
|00000d80| 74 68 65 20 73 61 6d 65 | 20 61 73 0d 20 20 5c 63 |the same| as. \c|
|00000d90| 6f 64 65 7b 28 6d 61 74 | 68 2e 66 6c 6f 6f 72 28 |ode{(mat|h.floor(|
|00000da0| 5c 76 61 72 7b 61 7d 20 | 2f 20 5c 76 61 72 7b 62 |\var{a} |/ \var{b|
|00000db0| 7d 29 2c 20 5c 76 61 72 | 7b 61 7d 20 5c 25 7b 7d |}), \var|{a} \%{}|
|00000dc0| 20 5c 76 61 72 7b 62 7d | 29 7d 2e 0d 5c 65 6e 64 | \var{b}|)}..\end|
|00000dd0| 7b 66 75 6e 63 64 65 73 | 63 7d 0d 0d 5c 62 65 67 |{funcdes|c}..\beg|
|00000de0| 69 6e 7b 66 75 6e 63 64 | 65 73 63 7d 7b 65 76 61 |in{funcd|esc}{eva|
|00000df0| 6c 7d 7b 73 5c 6f 70 74 | 69 6f 6e 61 6c 7b 5c 2c |l}{s\opt|ional{\,|
|00000e00| 20 67 6c 6f 62 61 6c 73 | 5c 6f 70 74 69 6f 6e 61 | globals|\optiona|
|00000e10| 6c 7b 5c 2c 20 6c 6f 63 | 61 6c 73 7d 7d 7d 0d 20 |l{\, loc|als}}}. |
|00000e20| 20 54 68 65 20 61 72 67 | 75 6d 65 6e 74 73 20 61 | The arg|uments a|
|00000e30| 72 65 20 61 20 73 74 72 | 69 6e 67 20 61 6e 64 20 |re a str|ing and |
|00000e40| 74 77 6f 20 6f 70 74 69 | 6f 6e 61 6c 20 64 69 63 |two opti|onal dic|
|00000e50| 74 69 6f 6e 61 72 69 65 | 73 2e 20 20 54 68 65 0d |tionarie|s. The.|
|00000e60| 20 20 73 74 72 69 6e 67 | 20 61 72 67 75 6d 65 6e | string| argumen|
|00000e70| 74 20 69 73 20 70 61 72 | 73 65 64 20 61 6e 64 20 |t is par|sed and |
|00000e80| 65 76 61 6c 75 61 74 65 | 64 20 61 73 20 61 20 50 |evaluate|d as a P|
|00000e90| 79 74 68 6f 6e 20 65 78 | 70 72 65 73 73 69 6f 6e |ython ex|pression|
|00000ea0| 0d 20 20 28 74 65 63 68 | 6e 69 63 61 6c 6c 79 20 |. (tech|nically |
|00000eb0| 73 70 65 61 6b 69 6e 67 | 2c 20 61 20 63 6f 6e 64 |speaking|, a cond|
|00000ec0| 69 74 69 6f 6e 20 6c 69 | 73 74 29 20 75 73 69 6e |ition li|st) usin|
|00000ed0| 67 20 74 68 65 20 64 69 | 63 74 69 6f 6e 61 72 69 |g the di|ctionari|
|00000ee0| 65 73 20 61 73 0d 20 20 | 67 6c 6f 62 61 6c 20 61 |es as. |global a|
|00000ef0| 6e 64 20 6c 6f 63 61 6c | 20 6e 61 6d 65 20 73 70 |nd local| name sp|
|00000f00| 61 63 65 2e 20 20 54 68 | 65 20 73 74 72 69 6e 67 |ace. Th|e string|
|00000f10| 20 6d 75 73 74 20 6e 6f | 74 20 63 6f 6e 74 61 69 | must no|t contai|
|00000f20| 6e 20 6e 75 6c 6c 20 62 | 79 74 65 73 0d 20 20 6f |n null b|ytes. o|
|00000f30| 72 20 6e 65 77 6c 69 6e | 65 20 63 68 61 72 61 63 |r newlin|e charac|
|00000f40| 74 65 72 73 2e 20 20 54 | 68 65 20 72 65 74 75 72 |ters. T|he retur|
|00000f50| 6e 20 76 61 6c 75 65 20 | 69 73 20 74 68 65 0d 20 |n value |is the. |
|00000f60| 20 72 65 73 75 6c 74 20 | 6f 66 20 74 68 65 20 65 | result |of the e|
|00000f70| 78 70 72 65 73 73 69 6f | 6e 2e 20 20 49 66 20 74 |xpressio|n. If t|
|00000f80| 68 65 20 74 68 69 72 64 | 20 61 72 67 75 6d 65 6e |he third| argumen|
|00000f90| 74 20 69 73 20 6f 6d 69 | 74 74 65 64 20 69 74 0d |t is omi|tted it.|
|00000fa0| 20 20 64 65 66 61 75 6c | 74 73 20 74 6f 20 74 68 | defaul|ts to th|
|00000fb0| 65 20 73 65 63 6f 6e 64 | 2e 20 20 49 66 20 62 6f |e second|. If bo|
|00000fc0| 74 68 20 64 69 63 74 69 | 6f 6e 61 72 69 65 73 20 |th dicti|onaries |
|00000fd0| 61 72 65 20 6f 6d 69 74 | 74 65 64 2c 20 74 68 65 |are omit|ted, the|
|00000fe0| 0d 20 20 65 78 70 72 65 | 73 73 69 6f 6e 20 69 73 |. expre|ssion is|
|00000ff0| 20 65 78 65 63 75 74 65 | 64 20 69 6e 20 74 68 65 | execute|d in the|
|00001000| 20 65 6e 76 69 72 6f 6e | 6d 65 6e 74 20 77 68 65 | environ|ment whe|
|00001010| 72 65 20 5c 63 6f 64 65 | 7b 65 76 61 6c 7d 20 69 |re \code|{eval} i|
|00001020| 73 0d 20 20 63 61 6c 6c | 65 64 2e 20 20 53 79 6e |s. call|ed. Syn|
|00001030| 74 61 78 20 65 72 72 6f | 72 73 20 61 72 65 20 72 |tax erro|rs are r|
|00001040| 65 70 6f 72 74 65 64 20 | 61 73 20 65 78 63 65 70 |eported |as excep|
|00001050| 74 69 6f 6e 73 2e 20 20 | 45 78 61 6d 70 6c 65 3a |tions. |Example:|
|00001060| 0d 0d 5c 62 63 6f 64 65 | 5c 62 65 67 69 6e 7b 76 |..\bcode|\begin{v|
|00001070| 65 72 62 61 74 69 6d 7d | 0d 3e 3e 3e 20 78 20 3d |erbatim}|.>>> x =|
|00001080| 20 31 0d 3e 3e 3e 20 70 | 72 69 6e 74 20 65 76 61 | 1.>>> p|rint eva|
|00001090| 6c 28 27 78 2b 31 27 29 | 0d 32 0d 3e 3e 3e 20 0d |l('x+1')|.2.>>> .|
|000010a0| 5c 65 6e 64 7b 76 65 72 | 62 61 74 69 6d 7d 5c 65 |\end{ver|batim}\e|
|000010b0| 63 6f 64 65 0d 0d 20 20 | 54 68 69 73 20 66 75 6e |code.. |This fun|
|000010c0| 63 74 69 6f 6e 20 63 61 | 6e 20 61 6c 73 6f 20 62 |ction ca|n also b|
|000010d0| 65 20 75 73 65 64 20 74 | 6f 20 65 78 65 63 75 74 |e used t|o execut|
|000010e0| 65 20 61 72 62 69 74 72 | 61 72 79 20 63 6f 64 65 |e arbitr|ary code|
|000010f0| 20 6f 62 6a 65 63 74 73 | 0d 20 20 28 65 2e 67 2e | objects|. (e.g.|
|00001100| 20 63 72 65 61 74 65 64 | 20 62 79 20 5c 63 6f 64 | created| by \cod|
|00001110| 65 7b 63 6f 6d 70 69 6c | 65 28 29 7d 29 2e 20 20 |e{compil|e()}). |
|00001120| 49 6e 20 74 68 69 73 20 | 63 61 73 65 20 70 61 73 |In this |case pas|
|00001130| 73 20 61 20 63 6f 64 65 | 0d 20 20 6f 62 6a 65 63 |s a code|. objec|
|00001140| 74 20 69 6e 73 74 65 61 | 64 20 6f 66 20 61 20 73 |t instea|d of a s|
|00001150| 74 72 69 6e 67 2e 20 20 | 54 68 65 20 63 6f 64 65 |tring. |The code|
|00001160| 20 6f 62 6a 65 63 74 20 | 6d 75 73 74 20 68 61 76 | object |must hav|
|00001170| 65 20 62 65 65 6e 20 63 | 6f 6d 70 69 6c 65 64 0d |e been c|ompiled.|
|00001180| 20 20 70 61 73 73 69 6e | 67 20 5c 63 6f 64 65 7b | passin|g \code{|
|00001190| 27 65 76 61 6c 27 7d 20 | 74 6f 20 74 68 65 20 5c |'eval'} |to the \|
|000011a0| 76 61 72 7b 6b 69 6e 64 | 7d 20 61 72 67 75 6d 65 |var{kind|} argume|
|000011b0| 6e 74 2e 0d 0d 20 20 4e | 6f 74 65 3a 20 64 79 6e |nt... N|ote: dyn|
|000011c0| 61 6d 69 63 20 65 78 65 | 63 75 74 69 6f 6e 20 6f |amic exe|cution o|
|000011d0| 66 20 73 74 61 74 65 6d | 65 6e 74 73 20 69 73 20 |f statem|ents is |
|000011e0| 73 75 70 70 6f 72 74 65 | 64 20 62 79 20 74 68 65 |supporte|d by the|
|000011f0| 0d 20 20 5c 63 6f 64 65 | 7b 65 78 65 63 7d 20 73 |. \code|{exec} s|
|00001200| 74 61 74 65 6d 65 6e 74 | 2e 0d 0d 5c 65 6e 64 7b |tatement|...\end{|
|00001210| 66 75 6e 63 64 65 73 63 | 7d 0d 0d 5c 62 65 67 69 |funcdesc|}..\begi|
|00001220| 6e 7b 66 75 6e 63 64 65 | 73 63 7d 7b 66 69 6c 74 |n{funcde|sc}{filt|
|00001230| 65 72 7d 7b 66 75 6e 63 | 74 69 6f 6e 5c 2c 20 6c |er}{func|tion\, l|
|00001240| 69 73 74 7d 0d 43 6f 6e | 73 74 72 75 63 74 20 61 |ist}.Con|struct a|
|00001250| 20 6c 69 73 74 20 66 72 | 6f 6d 20 74 68 6f 73 65 | list fr|om those|
|00001260| 20 65 6c 65 6d 65 6e 74 | 73 20 6f 66 20 5c 76 61 | element|s of \va|
|00001270| 72 7b 6c 69 73 74 7d 20 | 66 6f 72 20 77 68 69 63 |r{list} |for whic|
|00001280| 68 0d 5c 76 61 72 7b 66 | 75 6e 63 74 69 6f 6e 7d |h.\var{f|unction}|
|00001290| 20 72 65 74 75 72 6e 73 | 20 74 72 75 65 2e 20 20 | returns| true. |
|000012a0| 49 66 20 5c 76 61 72 7b | 6c 69 73 74 7d 20 69 73 |If \var{|list} is|
|000012b0| 20 61 20 73 74 72 69 6e | 67 20 6f 72 20 61 20 74 | a strin|g or a t|
|000012c0| 75 70 6c 65 2c 0d 74 68 | 65 20 72 65 73 75 6c 74 |uple,.th|e result|
|000012d0| 20 61 6c 73 6f 20 68 61 | 73 20 74 68 61 74 20 74 | also ha|s that t|
|000012e0| 79 70 65 3b 20 6f 74 68 | 65 72 77 69 73 65 20 69 |ype; oth|erwise i|
|000012f0| 74 20 69 73 20 61 6c 77 | 61 79 73 20 61 20 6c 69 |t is alw|ays a li|
|00001300| 73 74 2e 20 20 49 66 0d | 5c 76 61 72 7b 66 75 6e |st. If.|\var{fun|
|00001310| 63 74 69 6f 6e 7d 20 69 | 73 20 5c 63 6f 64 65 7b |ction} i|s \code{|
|00001320| 4e 6f 6e 65 7d 2c 20 74 | 68 65 20 69 64 65 6e 74 |None}, t|he ident|
|00001330| 69 74 79 20 66 75 6e 63 | 74 69 6f 6e 20 69 73 20 |ity func|tion is |
|00001340| 61 73 73 75 6d 65 64 2c | 0d 69 2e 65 2e 20 61 6c |assumed,|.i.e. al|
|00001350| 6c 20 65 6c 65 6d 65 6e | 74 73 20 6f 66 20 5c 76 |l elemen|ts of \v|
|00001360| 61 72 7b 6c 69 73 74 7d | 20 74 68 61 74 20 61 72 |ar{list}| that ar|
|00001370| 65 20 66 61 6c 73 65 20 | 28 7a 65 72 6f 20 6f 72 |e false |(zero or|
|00001380| 20 65 6d 70 74 79 29 20 | 61 72 65 0d 72 65 6d 6f | empty) |are.remo|
|00001390| 76 65 64 2e 0d 5c 65 6e | 64 7b 66 75 6e 63 64 65 |ved..\en|d{funcde|
|000013a0| 73 63 7d 0d 0d 5c 62 65 | 67 69 6e 7b 66 75 6e 63 |sc}..\be|gin{func|
|000013b0| 64 65 73 63 7d 7b 66 6c | 6f 61 74 7d 7b 78 7d 0d |desc}{fl|oat}{x}.|
|000013c0| 20 20 43 6f 6e 76 65 72 | 74 20 61 20 6e 75 6d 62 | Conver|t a numb|
|000013d0| 65 72 20 74 6f 20 66 6c | 6f 61 74 69 6e 67 20 70 |er to fl|oating p|
|000013e0| 6f 69 6e 74 2e 20 20 54 | 68 65 20 61 72 67 75 6d |oint. T|he argum|
|000013f0| 65 6e 74 20 6d 61 79 20 | 62 65 20 61 20 70 6c 61 |ent may |be a pla|
|00001400| 69 6e 20 6f 72 0d 20 20 | 6c 6f 6e 67 20 69 6e 74 |in or. |long int|
|00001410| 65 67 65 72 20 6f 72 20 | 61 20 66 6c 6f 61 74 69 |eger or |a floati|
|00001420| 6e 67 20 70 6f 69 6e 74 | 20 6e 75 6d 62 65 72 2e |ng point| number.|
|00001430| 0d 5c 65 6e 64 7b 66 75 | 6e 63 64 65 73 63 7d 0d |.\end{fu|ncdesc}.|
|00001440| 0d 5c 62 65 67 69 6e 7b | 66 75 6e 63 64 65 73 63 |.\begin{|funcdesc|
|00001450| 7d 7b 67 65 74 61 74 74 | 72 7d 7b 6f 62 6a 65 63 |}{getatt|r}{objec|
|00001460| 74 5c 2c 20 6e 61 6d 65 | 7d 0d 20 20 54 68 65 20 |t\, name|}. The |
|00001470| 61 72 67 75 6d 65 6e 74 | 73 20 61 72 65 20 61 6e |argument|s are an|
|00001480| 20 6f 62 6a 65 63 74 20 | 61 6e 64 20 61 20 73 74 | object |and a st|
|00001490| 72 69 6e 67 2e 20 20 54 | 68 65 20 73 74 72 69 6e |ring. T|he strin|
|000014a0| 67 20 6d 75 73 74 20 62 | 65 20 74 68 65 0d 20 20 |g must b|e the. |
|000014b0| 6e 61 6d 65 0d 20 20 6f | 66 20 6f 6e 65 20 6f 66 |name. o|f one of|
|000014c0| 20 74 68 65 20 6f 62 6a | 65 63 74 27 73 20 61 74 | the obj|ect's at|
|000014d0| 74 72 69 62 75 74 65 73 | 2e 20 20 54 68 65 20 72 |tributes|. The r|
|000014e0| 65 73 75 6c 74 20 69 73 | 20 74 68 65 20 76 61 6c |esult is| the val|
|000014f0| 75 65 20 6f 66 20 74 68 | 61 74 0d 20 20 61 74 74 |ue of th|at. att|
|00001500| 72 69 62 75 74 65 2e 20 | 20 46 6f 72 20 65 78 61 |ribute. | For exa|
|00001510| 6d 70 6c 65 2c 20 5c 63 | 6f 64 65 7b 67 65 74 61 |mple, \c|ode{geta|
|00001520| 74 74 72 28 5c 76 61 72 | 7b 78 7d 2c 20 27 5c 76 |ttr(\var|{x}, '\v|
|00001530| 61 72 7b 66 6f 6f 62 61 | 72 7d 27 29 7d 20 69 73 |ar{fooba|r}')} is|
|00001540| 20 65 71 75 69 76 61 6c | 65 6e 74 20 74 6f 0d 20 | equival|ent to. |
|00001550| 20 5c 63 6f 64 65 7b 5c | 76 61 72 7b 78 7d 2e 5c | \code{\|var{x}.\|
|00001560| 76 61 72 7b 66 6f 6f 62 | 61 72 7d 7d 2e 0d 5c 65 |var{foob|ar}}..\e|
|00001570| 6e 64 7b 66 75 6e 63 64 | 65 73 63 7d 0d 0d 5c 62 |nd{funcd|esc}..\b|
|00001580| 65 67 69 6e 7b 66 75 6e | 63 64 65 73 63 7d 7b 68 |egin{fun|cdesc}{h|
|00001590| 61 73 61 74 74 72 7d 7b | 6f 62 6a 65 63 74 5c 2c |asattr}{|object\,|
|000015a0| 20 6e 61 6d 65 7d 0d 20 | 20 54 68 65 20 61 72 67 | name}. | The arg|
|000015b0| 75 6d 65 6e 74 73 20 61 | 72 65 20 61 6e 20 6f 62 |uments a|re an ob|
|000015c0| 6a 65 63 74 20 61 6e 64 | 20 61 20 73 74 72 69 6e |ject and| a strin|
|000015d0| 67 2e 20 20 54 68 65 20 | 72 65 73 75 6c 74 20 69 |g. The |result i|
|000015e0| 73 20 31 20 69 66 20 74 | 68 65 0d 20 20 73 74 72 |s 1 if t|he. str|
|000015f0| 69 6e 67 20 69 73 20 74 | 68 65 20 6e 61 6d 65 20 |ing is t|he name |
|00001600| 6f 66 20 6f 6e 65 20 6f | 66 20 74 68 65 20 6f 62 |of one o|f the ob|
|00001610| 6a 65 63 74 27 73 20 61 | 74 74 72 69 62 75 74 65 |ject's a|ttribute|
|00001620| 73 2c 20 30 20 69 66 20 | 6e 6f 74 2e 0d 20 20 28 |s, 0 if |not.. (|
|00001630| 54 68 69 73 20 69 73 20 | 69 6d 70 6c 65 6d 65 6e |This is |implemen|
|00001640| 74 65 64 20 62 79 20 63 | 61 6c 6c 69 6e 67 20 5c |ted by c|alling \|
|00001650| 63 6f 64 65 7b 67 65 74 | 61 74 74 72 28 6f 62 6a |code{get|attr(obj|
|00001660| 65 63 74 2c 20 6e 61 6d | 65 29 7d 20 61 6e 64 0d |ect, nam|e)} and.|
|00001670| 20 20 73 65 65 69 6e 67 | 20 77 68 65 74 68 65 72 | seeing| whether|
|00001680| 20 69 74 20 72 61 69 73 | 65 73 20 61 6e 20 65 78 | it rais|es an ex|
|00001690| 63 65 70 74 69 6f 6e 20 | 6f 72 20 6e 6f 74 2e 29 |ception |or not.)|
|000016a0| 0d 5c 65 6e 64 7b 66 75 | 6e 63 64 65 73 63 7d 0d |.\end{fu|ncdesc}.|
|000016b0| 0d 5c 62 65 67 69 6e 7b | 66 75 6e 63 64 65 73 63 |.\begin{|funcdesc|
|000016c0| 7d 7b 68 61 73 68 7d 7b | 6f 62 6a 65 63 74 7d 0d |}{hash}{|object}.|
|000016d0| 20 20 52 65 74 75 72 6e | 20 74 68 65 20 68 61 73 | Return| the has|
|000016e0| 68 20 76 61 6c 75 65 20 | 6f 66 20 74 68 65 20 6f |h value |of the o|
|000016f0| 62 6a 65 63 74 20 28 69 | 66 20 69 74 20 68 61 73 |bject (i|f it has|
|00001700| 20 6f 6e 65 29 2e 20 20 | 48 61 73 68 20 76 61 6c | one). |Hash val|
|00001710| 75 65 73 0d 20 20 61 72 | 65 20 33 32 2d 62 69 74 |ues. ar|e 32-bit|
|00001720| 20 69 6e 74 65 67 65 72 | 73 2e 20 20 54 68 65 79 | integer|s. They|
|00001730| 20 61 72 65 20 75 73 65 | 64 20 74 6f 20 71 75 69 | are use|d to qui|
|00001740| 63 6b 6c 79 20 63 6f 6d | 70 61 72 65 20 64 69 63 |ckly com|pare dic|
|00001750| 74 69 6f 6e 61 72 79 0d | 20 20 6b 65 79 73 20 64 |tionary.| keys d|
|00001760| 75 72 69 6e 67 20 61 20 | 64 69 63 74 69 6f 6e 61 |uring a |dictiona|
|00001770| 72 79 20 6c 6f 6f 6b 75 | 70 2e 20 20 4e 75 6d 65 |ry looku|p. Nume|
|00001780| 72 69 63 20 76 61 6c 75 | 65 73 20 74 68 61 74 20 |ric valu|es that |
|00001790| 63 6f 6d 70 61 72 65 20 | 65 71 75 61 6c 0d 20 20 |compare |equal. |
|000017a0| 68 61 76 65 20 74 68 65 | 20 73 61 6d 65 20 68 61 |have the| same ha|
|000017b0| 73 68 20 76 61 6c 75 65 | 20 28 65 76 65 6e 20 69 |sh value| (even i|
|000017c0| 66 20 74 68 65 79 20 61 | 72 65 20 6f 66 20 64 69 |f they a|re of di|
|000017d0| 66 66 65 72 65 6e 74 20 | 74 79 70 65 73 2c 20 65 |fferent |types, e|
|000017e0| 2e 67 2e 0d 20 20 31 20 | 61 6e 64 20 31 2e 30 29 |.g.. 1 |and 1.0)|
|000017f0| 2e 0d 5c 65 6e 64 7b 66 | 75 6e 63 64 65 73 63 7d |..\end{f|uncdesc}|
|00001800| 0d 0d 5c 62 65 67 69 6e | 7b 66 75 6e 63 64 65 73 |..\begin|{funcdes|
|00001810| 63 7d 7b 68 65 78 7d 7b | 78 7d 0d 20 20 43 6f 6e |c}{hex}{|x}. Con|
|00001820| 76 65 72 74 20 61 20 6e | 75 6d 62 65 72 20 74 6f |vert a n|umber to|
|00001830| 20 61 20 68 65 78 61 64 | 65 63 69 6d 61 6c 20 73 | a hexad|ecimal s|
|00001840| 74 72 69 6e 67 2e 20 20 | 54 68 65 20 72 65 73 75 |tring. |The resu|
|00001850| 6c 74 20 69 73 20 61 20 | 76 61 6c 69 64 0d 20 20 |lt is a |valid. |
|00001860| 50 79 74 68 6f 6e 20 65 | 78 70 72 65 73 73 69 6f |Python e|xpressio|
|00001870| 6e 2e 0d 5c 65 6e 64 7b | 66 75 6e 63 64 65 73 63 |n..\end{|funcdesc|
|00001880| 7d 0d 0d 5c 62 65 67 69 | 6e 7b 66 75 6e 63 64 65 |}..\begi|n{funcde|
|00001890| 73 63 7d 7b 69 64 7d 7b | 6f 62 6a 65 63 74 7d 0d |sc}{id}{|object}.|
|000018a0| 20 20 52 65 74 75 72 6e | 20 74 68 65 20 60 69 64 | Return| the `id|
|000018b0| 65 6e 74 69 74 79 27 20 | 6f 66 20 61 6e 20 6f 62 |entity' |of an ob|
|000018c0| 6a 65 63 74 2e 20 20 54 | 68 69 73 20 69 73 20 61 |ject. T|his is a|
|000018d0| 6e 20 69 6e 74 65 67 65 | 72 20 77 68 69 63 68 20 |n intege|r which |
|000018e0| 69 73 0d 20 20 67 75 61 | 72 61 6e 74 65 65 64 20 |is. gua|ranteed |
|000018f0| 74 6f 20 62 65 20 75 6e | 69 71 75 65 20 61 6e 64 |to be un|ique and|
|00001900| 20 63 6f 6e 73 74 61 6e | 74 20 66 6f 72 20 74 68 | constan|t for th|
|00001910| 69 73 20 6f 62 6a 65 63 | 74 20 64 75 72 69 6e 67 |is objec|t during|
|00001920| 20 69 74 73 0d 20 20 6c | 69 66 65 74 69 6d 65 2e | its. l|ifetime.|
|00001930| 20 20 28 54 77 6f 20 6f | 62 6a 65 63 74 73 20 77 | (Two o|bjects w|
|00001940| 68 6f 73 65 20 6c 69 66 | 65 74 69 6d 65 73 20 61 |hose lif|etimes a|
|00001950| 72 65 20 64 69 73 6a 75 | 6e 63 74 20 6d 61 79 20 |re disju|nct may |
|00001960| 68 61 76 65 20 74 68 65 | 0d 20 20 73 61 6d 65 20 |have the|. same |
|00001970| 69 64 28 29 20 76 61 6c | 75 65 2e 29 20 20 28 49 |id() val|ue.) (I|
|00001980| 6d 70 6c 65 6d 65 6e 74 | 61 74 69 6f 6e 20 6e 6f |mplement|ation no|
|00001990| 74 65 3a 20 74 68 69 73 | 20 69 73 20 74 68 65 20 |te: this| is the |
|000019a0| 61 64 64 72 65 73 73 20 | 6f 66 20 74 68 65 0d 20 |address |of the. |
|000019b0| 20 6f 62 6a 65 63 74 2e | 29 0d 5c 65 6e 64 7b 66 | object.|).\end{f|
|000019c0| 75 6e 63 64 65 73 63 7d | 0d 0d 5c 62 65 67 69 6e |uncdesc}|..\begin|
|000019d0| 7b 66 75 6e 63 64 65 73 | 63 7d 7b 69 6e 70 75 74 |{funcdes|c}{input|
|000019e0| 7d 7b 5c 6f 70 74 69 6f | 6e 61 6c 7b 70 72 6f 6d |}{\optio|nal{prom|
|000019f0| 70 74 7d 7d 0d 20 20 41 | 6c 6d 6f 73 74 20 65 71 |pt}}. A|lmost eq|
|00001a00| 75 69 76 61 6c 65 6e 74 | 20 74 6f 20 5c 63 6f 64 |uivalent| to \cod|
|00001a10| 65 7b 65 76 61 6c 28 72 | 61 77 5f 69 6e 70 75 74 |e{eval(r|aw_input|
|00001a20| 28 5c 76 61 72 7b 70 72 | 6f 6d 70 74 7d 29 29 7d |(\var{pr|ompt}))}|
|00001a30| 2e 20 20 4c 69 6b 65 0d | 20 20 5c 63 6f 64 65 7b |. Like.| \code{|
|00001a40| 72 61 77 5f 69 6e 70 75 | 74 28 29 7d 2c 20 74 68 |raw_inpu|t()}, th|
|00001a50| 65 20 5c 76 61 72 7b 70 | 72 6f 6d 70 74 7d 20 61 |e \var{p|rompt} a|
|00001a60| 72 67 75 6d 65 6e 74 20 | 69 73 20 6f 70 74 69 6f |rgument |is optio|
|00001a70| 6e 61 6c 2e 20 20 54 68 | 65 20 64 69 66 66 65 72 |nal. Th|e differ|
|00001a80| 65 6e 63 65 0d 20 20 69 | 73 20 74 68 61 74 20 61 |ence. i|s that a|
|00001a90| 20 6c 6f 6e 67 20 69 6e | 70 75 74 20 65 78 70 72 | long in|put expr|
|00001aa0| 65 73 73 69 6f 6e 20 6d | 61 79 20 62 65 20 62 72 |ession m|ay be br|
|00001ab0| 6f 6b 65 6e 20 6f 76 65 | 72 20 6d 75 6c 74 69 70 |oken ove|r multip|
|00001ac0| 6c 65 20 6c 69 6e 65 73 | 20 75 73 69 6e 67 0d 20 |le lines| using. |
|00001ad0| 20 74 68 65 20 62 61 63 | 6b 73 6c 61 73 68 20 63 | the bac|kslash c|
|00001ae0| 6f 6e 76 65 6e 74 69 6f | 6e 2e 0d 5c 65 6e 64 7b |onventio|n..\end{|
|00001af0| 66 75 6e 63 64 65 73 63 | 7d 0d 0d 5c 62 65 67 69 |funcdesc|}..\begi|
|00001b00| 6e 7b 66 75 6e 63 64 65 | 73 63 7d 7b 69 6e 74 7d |n{funcde|sc}{int}|
|00001b10| 7b 78 7d 0d 20 20 43 6f | 6e 76 65 72 74 20 61 20 |{x}. Co|nvert a |
|00001b20| 6e 75 6d 62 65 72 20 74 | 6f 20 61 20 70 6c 61 69 |number t|o a plai|
|00001b30| 6e 20 69 6e 74 65 67 65 | 72 2e 20 20 54 68 65 20 |n intege|r. The |
|00001b40| 61 72 67 75 6d 65 6e 74 | 20 6d 61 79 20 62 65 20 |argument| may be |
|00001b50| 61 20 70 6c 61 69 6e 20 | 6f 72 0d 20 20 6c 6f 6e |a plain |or. lon|
|00001b60| 67 20 69 6e 74 65 67 65 | 72 20 6f 72 20 61 20 66 |g intege|r or a f|
|00001b70| 6c 6f 61 74 69 6e 67 20 | 70 6f 69 6e 74 20 6e 75 |loating |point nu|
|00001b80| 6d 62 65 72 2e 0d 5c 65 | 6e 64 7b 66 75 6e 63 64 |mber..\e|nd{funcd|
|00001b90| 65 73 63 7d 0d 0d 5c 62 | 65 67 69 6e 7b 66 75 6e |esc}..\b|egin{fun|
|00001ba0| 63 64 65 73 63 7d 7b 6c | 65 6e 7d 7b 73 7d 0d 20 |cdesc}{l|en}{s}. |
|00001bb0| 20 52 65 74 75 72 6e 20 | 74 68 65 20 6c 65 6e 67 | Return |the leng|
|00001bc0| 74 68 20 28 74 68 65 20 | 6e 75 6d 62 65 72 20 6f |th (the |number o|
|00001bd0| 66 20 69 74 65 6d 73 29 | 20 6f 66 20 61 6e 20 6f |f items)| of an o|
|00001be0| 62 6a 65 63 74 2e 20 20 | 54 68 65 20 61 72 67 75 |bject. |The argu|
|00001bf0| 6d 65 6e 74 0d 20 20 6d | 61 79 20 62 65 20 61 20 |ment. m|ay be a |
|00001c00| 73 65 71 75 65 6e 63 65 | 20 28 73 74 72 69 6e 67 |sequence| (string|
|00001c10| 2c 20 74 75 70 6c 65 20 | 6f 72 20 6c 69 73 74 29 |, tuple |or list)|
|00001c20| 20 6f 72 20 61 20 6d 61 | 70 70 69 6e 67 20 28 64 | or a ma|pping (d|
|00001c30| 69 63 74 69 6f 6e 61 72 | 79 29 2e 0d 5c 65 6e 64 |ictionar|y)..\end|
|00001c40| 7b 66 75 6e 63 64 65 73 | 63 7d 0d 0d 5c 62 65 67 |{funcdes|c}..\beg|
|00001c50| 69 6e 7b 66 75 6e 63 64 | 65 73 63 7d 7b 6c 6f 6e |in{funcd|esc}{lon|
|00001c60| 67 7d 7b 78 7d 0d 20 20 | 43 6f 6e 76 65 72 74 20 |g}{x}. |Convert |
|00001c70| 61 20 6e 75 6d 62 65 72 | 20 74 6f 20 61 20 6c 6f |a number| to a lo|
|00001c80| 6e 67 20 69 6e 74 65 67 | 65 72 2e 20 20 54 68 65 |ng integ|er. The|
|00001c90| 20 61 72 67 75 6d 65 6e | 74 20 6d 61 79 20 62 65 | argumen|t may be|
|00001ca0| 20 61 20 70 6c 61 69 6e | 20 6f 72 0d 20 20 6c 6f | a plain| or. lo|
|00001cb0| 6e 67 20 69 6e 74 65 67 | 65 72 20 6f 72 20 61 20 |ng integ|er or a |
|00001cc0| 66 6c 6f 61 74 69 6e 67 | 20 70 6f 69 6e 74 20 6e |floating| point n|
|00001cd0| 75 6d 62 65 72 2e 0d 5c | 65 6e 64 7b 66 75 6e 63 |umber..\|end{func|
|00001ce0| 64 65 73 63 7d 0d 0d 5c | 62 65 67 69 6e 7b 66 75 |desc}..\|begin{fu|
|00001cf0| 6e 63 64 65 73 63 7d 7b | 6d 61 70 7d 7b 66 75 6e |ncdesc}{|map}{fun|
|00001d00| 63 74 69 6f 6e 5c 2c 20 | 6c 69 73 74 5c 2c 20 2e |ction\, |list\, .|
|00001d10| 2e 2e 7d 0d 41 70 70 6c | 79 20 5c 76 61 72 7b 66 |..}.Appl|y \var{f|
|00001d20| 75 6e 63 74 69 6f 6e 7d | 20 74 6f 20 65 76 65 72 |unction}| to ever|
|00001d30| 79 20 69 74 65 6d 20 6f | 66 20 5c 76 61 72 7b 6c |y item o|f \var{l|
|00001d40| 69 73 74 7d 20 61 6e 64 | 20 72 65 74 75 72 6e 20 |ist} and| return |
|00001d50| 61 20 6c 69 73 74 0d 6f | 66 20 74 68 65 20 72 65 |a list.o|f the re|
|00001d60| 73 75 6c 74 73 2e 20 20 | 49 66 20 61 64 64 69 74 |sults. |If addit|
|00001d70| 69 6f 6e 61 6c 20 5c 76 | 61 72 7b 6c 69 73 74 7d |ional \v|ar{list}|
|00001d80| 20 61 72 67 75 6d 65 6e | 74 73 20 61 72 65 20 70 | argumen|ts are p|
|00001d90| 61 73 73 65 64 2c 20 0d | 5c 76 61 72 7b 66 75 6e |assed, .|\var{fun|
|00001da0| 63 74 69 6f 6e 7d 20 6d | 75 73 74 20 74 61 6b 65 |ction} m|ust take|
|00001db0| 20 74 68 61 74 20 6d 61 | 6e 79 20 61 72 67 75 6d | that ma|ny argum|
|00001dc0| 65 6e 74 73 20 61 6e 64 | 20 69 73 20 61 70 70 6c |ents and| is appl|
|00001dd0| 69 65 64 20 74 6f 0d 74 | 68 65 20 69 74 65 6d 73 |ied to.t|he items|
|00001de0| 20 6f 66 20 61 6c 6c 20 | 6c 69 73 74 73 20 69 6e | of all |lists in|
|00001df0| 20 70 61 72 61 6c 6c 65 | 6c 3b 20 69 66 20 61 20 | paralle|l; if a |
|00001e00| 6c 69 73 74 20 69 73 20 | 73 68 6f 72 74 65 72 20 |list is |shorter |
|00001e10| 74 68 61 6e 20 61 6e 6f | 74 68 65 72 0d 69 74 20 |than ano|ther.it |
|00001e20| 69 73 20 61 73 73 75 6d | 65 64 20 74 6f 20 62 65 |is assum|ed to be|
|00001e30| 20 65 78 74 65 6e 64 65 | 64 20 77 69 74 68 20 5c | extende|d with \|
|00001e40| 63 6f 64 65 7b 4e 6f 6e | 65 7d 20 69 74 65 6d 73 |code{Non|e} items|
|00001e50| 2e 20 20 49 66 0d 5c 76 | 61 72 7b 66 75 6e 63 74 |. If.\v|ar{funct|
|00001e60| 69 6f 6e 7d 20 69 73 20 | 5c 63 6f 64 65 7b 4e 6f |ion} is |\code{No|
|00001e70| 6e 65 7d 2c 20 74 68 65 | 20 69 64 65 6e 74 69 74 |ne}, the| identit|
|00001e80| 79 20 66 75 6e 63 74 69 | 6f 6e 20 69 73 20 61 73 |y functi|on is as|
|00001e90| 73 75 6d 65 64 3b 20 69 | 66 0d 74 68 65 72 65 20 |sumed; i|f.there |
|00001ea0| 61 72 65 20 6d 75 6c 74 | 69 70 6c 65 20 6c 69 73 |are mult|iple lis|
|00001eb0| 74 20 61 72 67 75 6d 65 | 6e 74 73 2c 20 5c 63 6f |t argume|nts, \co|
|00001ec0| 64 65 7b 6d 61 70 7d 20 | 72 65 74 75 72 6e 73 20 |de{map} |returns |
|00001ed0| 61 20 6c 69 73 74 0d 63 | 6f 6e 73 69 73 74 69 6e |a list.c|onsistin|
|00001ee0| 67 20 6f 66 20 74 75 70 | 6c 65 73 20 63 6f 6e 74 |g of tup|les cont|
|00001ef0| 61 69 6e 69 6e 67 20 74 | 68 65 20 63 6f 72 72 65 |aining t|he corre|
|00001f00| 73 70 6f 6e 64 69 6e 67 | 20 69 74 65 6d 73 20 66 |sponding| items f|
|00001f10| 72 6f 6d 20 61 6c 6c 20 | 6c 69 73 74 73 0d 28 69 |rom all |lists.(i|
|00001f20| 2e 65 2e 20 61 20 6b 69 | 6e 64 20 6f 66 20 74 72 |.e. a ki|nd of tr|
|00001f30| 61 6e 73 70 6f 73 65 20 | 6f 70 65 72 61 74 69 6f |anspose |operatio|
|00001f40| 6e 29 2e 20 20 54 68 65 | 20 5c 76 61 72 7b 6c 69 |n). The| \var{li|
|00001f50| 73 74 7d 20 61 72 67 75 | 6d 65 6e 74 73 20 6d 61 |st} argu|ments ma|
|00001f60| 79 20 62 65 0d 61 6e 79 | 20 6b 69 6e 64 20 6f 66 |y be.any| kind of|
|00001f70| 20 73 65 71 75 65 6e 63 | 65 3b 20 74 68 65 20 72 | sequenc|e; the r|
|00001f80| 65 73 75 6c 74 20 69 73 | 20 61 6c 77 61 79 73 20 |esult is| always |
|00001f90| 61 20 6c 69 73 74 2e 0d | 5c 65 6e 64 7b 66 75 6e |a list..|\end{fun|
|00001fa0| 63 64 65 73 63 7d 0d 0d | 5c 62 65 67 69 6e 7b 66 |cdesc}..|\begin{f|
|00001fb0| 75 6e 63 64 65 73 63 7d | 7b 6d 61 78 7d 7b 73 7d |uncdesc}|{max}{s}|
|00001fc0| 0d 20 20 52 65 74 75 72 | 6e 20 74 68 65 20 6c 61 |. Retur|n the la|
|00001fd0| 72 67 65 73 74 20 69 74 | 65 6d 20 6f 66 20 61 20 |rgest it|em of a |
|00001fe0| 6e 6f 6e 2d 65 6d 70 74 | 79 20 73 65 71 75 65 6e |non-empt|y sequen|
|00001ff0| 63 65 20 28 73 74 72 69 | 6e 67 2c 20 74 75 70 6c |ce (stri|ng, tupl|
|00002000| 65 20 6f 72 0d 20 20 6c | 69 73 74 29 2e 0d 5c 65 |e or. l|ist)..\e|
|00002010| 6e 64 7b 66 75 6e 63 64 | 65 73 63 7d 0d 0d 5c 62 |nd{funcd|esc}..\b|
|00002020| 65 67 69 6e 7b 66 75 6e | 63 64 65 73 63 7d 7b 6d |egin{fun|cdesc}{m|
|00002030| 69 6e 7d 7b 73 7d 0d 20 | 20 52 65 74 75 72 6e 20 |in}{s}. | Return |
|00002040| 74 68 65 20 73 6d 61 6c | 6c 65 73 74 20 69 74 65 |the smal|lest ite|
|00002050| 6d 20 6f 66 20 61 20 6e | 6f 6e 2d 65 6d 70 74 79 |m of a n|on-empty|
|00002060| 20 73 65 71 75 65 6e 63 | 65 20 28 73 74 72 69 6e | sequenc|e (strin|
|00002070| 67 2c 20 74 75 70 6c 65 | 20 6f 72 0d 20 20 6c 69 |g, tuple| or. li|
|00002080| 73 74 29 2e 0d 5c 65 6e | 64 7b 66 75 6e 63 64 65 |st)..\en|d{funcde|
|00002090| 73 63 7d 0d 0d 5c 62 65 | 67 69 6e 7b 66 75 6e 63 |sc}..\be|gin{func|
|000020a0| 64 65 73 63 7d 7b 6f 63 | 74 7d 7b 78 7d 0d 20 20 |desc}{oc|t}{x}. |
|000020b0| 43 6f 6e 76 65 72 74 20 | 61 20 6e 75 6d 62 65 72 |Convert |a number|
|000020c0| 20 74 6f 20 61 6e 20 6f | 63 74 61 6c 20 73 74 72 | to an o|ctal str|
|000020d0| 69 6e 67 2e 20 20 54 68 | 65 20 72 65 73 75 6c 74 |ing. Th|e result|
|000020e0| 20 69 73 20 61 20 76 61 | 6c 69 64 20 50 79 74 68 | is a va|lid Pyth|
|000020f0| 6f 6e 0d 20 20 65 78 70 | 72 65 73 73 69 6f 6e 2e |on. exp|ression.|
|00002100| 0d 5c 65 6e 64 7b 66 75 | 6e 63 64 65 73 63 7d 0d |.\end{fu|ncdesc}.|
|00002110| 0d 5c 62 65 67 69 6e 7b | 66 75 6e 63 64 65 73 63 |.\begin{|funcdesc|
|00002120| 7d 7b 6f 70 65 6e 7d 7b | 66 69 6c 65 6e 61 6d 65 |}{open}{|filename|
|00002130| 5c 2c 20 5c 6f 70 74 69 | 6f 6e 61 6c 7b 6d 6f 64 |\, \opti|onal{mod|
|00002140| 65 5c 6f 70 74 69 6f 6e | 61 6c 7b 5c 2c 20 62 75 |e\option|al{\, bu|
|00002150| 66 73 69 7a 65 7d 7d 7d | 0d 20 20 52 65 74 75 72 |fsize}}}|. Retur|
|00002160| 6e 20 61 20 6e 65 77 20 | 66 69 6c 65 20 6f 62 6a |n a new |file obj|
|00002170| 65 63 74 20 28 64 65 73 | 63 72 69 62 65 64 20 65 |ect (des|cribed e|
|00002180| 61 72 6c 69 65 72 20 75 | 6e 64 65 72 20 42 75 69 |arlier u|nder Bui|
|00002190| 6c 74 2d 69 6e 20 54 79 | 70 65 73 29 2e 0d 20 20 |lt-in Ty|pes).. |
|000021a0| 54 68 65 20 66 69 72 73 | 74 20 74 77 6f 20 61 72 |The firs|t two ar|
|000021b0| 67 75 6d 65 6e 74 73 20 | 61 72 65 20 74 68 65 20 |guments |are the |
|000021c0| 73 61 6d 65 20 61 73 20 | 66 6f 72 20 5c 63 6f 64 |same as |for \cod|
|000021d0| 65 7b 73 74 64 69 6f 7d | 27 73 0d 20 20 5c 63 6f |e{stdio}|'s. \co|
|000021e0| 64 65 7b 66 6f 70 65 6e | 28 29 7d 3a 20 5c 76 61 |de{fopen|()}: \va|
|000021f0| 72 7b 66 69 6c 65 6e 61 | 6d 65 7d 20 69 73 20 74 |r{filena|me} is t|
|00002200| 68 65 20 66 69 6c 65 20 | 6e 61 6d 65 20 74 6f 20 |he file |name to |
|00002210| 62 65 20 6f 70 65 6e 65 | 64 2c 0d 20 20 5c 76 61 |be opene|d,. \va|
|00002220| 72 7b 6d 6f 64 65 7d 20 | 69 6e 64 69 63 61 74 65 |r{mode} |indicate|
|00002230| 73 20 68 6f 77 20 74 68 | 65 20 66 69 6c 65 20 69 |s how th|e file i|
|00002240| 73 20 74 6f 20 62 65 20 | 6f 70 65 6e 65 64 3a 20 |s to be |opened: |
|00002250| 5c 63 6f 64 65 7b 27 72 | 27 7d 20 66 6f 72 0d 20 |\code{'r|'} for. |
|00002260| 20 72 65 61 64 69 6e 67 | 2c 20 5c 63 6f 64 65 7b | reading|, \code{|
|00002270| 27 77 27 7d 20 66 6f 72 | 20 77 72 69 74 69 6e 67 |'w'} for| writing|
|00002280| 20 28 74 72 75 6e 63 61 | 74 69 6e 67 20 61 6e 20 | (trunca|ting an |
|00002290| 65 78 69 73 74 69 6e 67 | 20 66 69 6c 65 29 2c 20 |existing| file), |
|000022a0| 61 6e 64 0d 20 20 5c 63 | 6f 64 65 7b 27 61 27 7d |and. \c|ode{'a'}|
|000022b0| 20 6f 70 65 6e 73 20 69 | 74 20 66 6f 72 20 61 70 | opens i|t for ap|
|000022c0| 70 65 6e 64 69 6e 67 2e | 20 20 4d 6f 64 65 73 20 |pending.| Modes |
|000022d0| 5c 63 6f 64 65 7b 27 72 | 2b 27 7d 2c 20 5c 63 6f |\code{'r|+'}, \co|
|000022e0| 64 65 7b 27 77 2b 27 7d | 20 61 6e 64 0d 20 20 5c |de{'w+'}| and. \|
|000022f0| 63 6f 64 65 7b 27 61 2b | 27 7d 20 6f 70 65 6e 20 |code{'a+|'} open |
|00002300| 74 68 65 20 66 69 6c 65 | 20 66 6f 72 20 75 70 64 |the file| for upd|
|00002310| 61 74 69 6e 67 2c 20 70 | 72 6f 76 69 64 65 64 20 |ating, p|rovided |
|00002320| 74 68 65 20 75 6e 64 65 | 72 6c 79 69 6e 67 0d 20 |the unde|rlying. |
|00002330| 20 5c 63 6f 64 65 7b 73 | 74 64 69 6f 7d 20 6c 69 | \code{s|tdio} li|
|00002340| 62 72 61 72 79 20 75 6e | 64 65 72 73 74 61 6e 64 |brary un|derstand|
|00002350| 73 20 74 68 69 73 2e 20 | 20 4f 6e 20 73 79 73 74 |s this. | On syst|
|00002360| 65 6d 73 20 74 68 61 74 | 20 64 69 66 66 65 72 65 |ems that| differe|
|00002370| 6e 74 69 61 74 65 0d 20 | 20 62 65 74 77 65 65 6e |ntiate. | between|
|00002380| 20 62 69 6e 61 72 79 20 | 61 6e 64 20 74 65 78 74 | binary |and text|
|00002390| 20 66 69 6c 65 73 2c 20 | 5c 63 6f 64 65 7b 27 62 | files, |\code{'b|
|000023a0| 27 7d 20 61 70 70 65 6e | 64 65 64 20 74 6f 20 74 |'} appen|ded to t|
|000023b0| 68 65 20 6d 6f 64 65 20 | 6f 70 65 6e 73 0d 20 20 |he mode |opens. |
|000023c0| 74 68 65 20 66 69 6c 65 | 20 69 6e 20 62 69 6e 61 |the file| in bina|
|000023d0| 72 79 20 6d 6f 64 65 2e | 20 20 49 66 20 74 68 65 |ry mode.| If the|
|000023e0| 20 66 69 6c 65 20 63 61 | 6e 6e 6f 74 20 62 65 20 | file ca|nnot be |
|000023f0| 6f 70 65 6e 65 64 2c 20 | 5c 63 6f 64 65 7b 49 4f |opened, |\code{IO|
|00002400| 45 72 72 6f 72 7d 0d 20 | 20 69 73 20 72 61 69 73 |Error}. | is rais|
|00002410| 65 64 2e 0d 49 66 20 5c | 76 61 72 7b 6d 6f 64 65 |ed..If \|var{mode|
|00002420| 7d 20 69 73 20 6f 6d 69 | 74 74 65 64 2c 20 69 74 |} is omi|tted, it|
|00002430| 20 64 65 66 61 75 6c 74 | 73 20 74 6f 20 5c 63 6f | default|s to \co|
|00002440| 64 65 7b 27 72 27 7d 2e | 0d 54 68 65 20 6f 70 74 |de{'r'}.|.The opt|
|00002450| 69 6f 6e 61 6c 20 5c 76 | 61 72 7b 62 75 66 73 69 |ional \v|ar{bufsi|
|00002460| 7a 65 7d 20 61 72 67 75 | 6d 65 6e 74 20 73 70 65 |ze} argu|ment spe|
|00002470| 63 69 66 69 65 73 20 74 | 68 65 20 66 69 6c 65 27 |cifies t|he file'|
|00002480| 73 20 64 65 73 69 72 65 | 64 0d 62 75 66 66 65 72 |s desire|d.buffer|
|00002490| 20 73 69 7a 65 3a 20 30 | 20 6d 65 61 6e 73 20 75 | size: 0| means u|
|000024a0| 6e 62 75 66 66 65 72 65 | 64 2c 20 31 20 6d 65 61 |nbuffere|d, 1 mea|
|000024b0| 6e 73 20 6c 69 6e 65 20 | 62 75 66 66 65 72 65 64 |ns line |buffered|
|000024c0| 2c 20 61 6e 79 20 6f 74 | 68 65 72 0d 70 6f 73 69 |, any ot|her.posi|
|000024d0| 74 69 76 65 20 76 61 6c | 75 65 20 6d 65 61 6e 73 |tive val|ue means|
|000024e0| 20 75 73 65 20 61 20 62 | 75 66 66 65 72 20 6f 66 | use a b|uffer of|
|000024f0| 20 28 61 70 70 72 6f 78 | 69 6d 61 74 65 6c 79 29 | (approx|imately)|
|00002500| 20 74 68 61 74 20 73 69 | 7a 65 2e 20 20 41 0d 6e | that si|ze. A.n|
|00002510| 65 67 61 74 69 76 65 20 | 5c 76 61 72 7b 62 75 66 |egative |\var{buf|
|00002520| 73 69 7a 65 7d 20 6d 65 | 61 6e 73 20 74 6f 20 75 |size} me|ans to u|
|00002530| 73 65 20 74 68 65 20 73 | 79 73 74 65 6d 20 64 65 |se the s|ystem de|
|00002540| 66 61 75 6c 74 2c 20 77 | 68 69 63 68 20 69 73 0d |fault, w|hich is.|
|00002550| 75 73 75 61 6c 6c 79 20 | 6c 69 6e 65 20 62 75 66 |usually |line buf|
|00002560| 66 65 72 65 64 20 66 6f | 72 20 66 6f 72 20 74 74 |fered fo|r for tt|
|00002570| 79 20 64 65 76 69 63 65 | 73 20 61 6e 64 20 66 75 |y device|s and fu|
|00002580| 6c 6c 79 20 62 75 66 66 | 65 72 65 64 20 66 6f 72 |lly buff|ered for|
|00002590| 20 6f 74 68 65 72 0d 66 | 69 6c 65 73 2e 25 0d 5c | other.f|iles.%.\|
|000025a0| 66 6f 6f 74 6e 6f 74 65 | 7b 53 70 65 63 69 66 79 |footnote|{Specify|
|000025b0| 69 6e 67 20 61 20 62 75 | 66 66 65 72 20 73 69 7a |ing a bu|ffer siz|
|000025c0| 65 20 63 75 72 72 65 6e | 74 6c 79 20 68 61 73 20 |e curren|tly has |
|000025d0| 6e 6f 20 65 66 66 65 63 | 74 20 6f 6e 20 73 79 73 |no effec|t on sys|
|000025e0| 74 65 6d 73 0d 74 68 61 | 74 20 64 6f 6e 27 74 20 |tems.tha|t don't |
|000025f0| 68 61 76 65 20 5c 63 6f | 64 65 7b 73 65 74 76 62 |have \co|de{setvb|
|00002600| 75 66 28 29 7d 2e 20 20 | 54 68 65 20 69 6e 74 65 |uf()}. |The inte|
|00002610| 72 66 61 63 65 20 74 6f | 20 73 70 65 63 69 66 79 |rface to| specify|
|00002620| 20 74 68 65 20 62 75 66 | 66 65 72 0d 73 69 7a 65 | the buf|fer.size|
|00002630| 20 69 73 20 6e 6f 74 20 | 64 6f 6e 65 20 75 73 69 | is not |done usi|
|00002640| 6e 67 20 61 20 6d 65 74 | 68 6f 64 20 74 68 61 74 |ng a met|hod that|
|00002650| 20 63 61 6c 6c 73 20 5c | 63 6f 64 65 7b 73 65 74 | calls \|code{set|
|00002660| 76 62 75 66 28 29 7d 2c | 20 62 65 63 61 75 73 65 |vbuf()},| because|
|00002670| 0d 74 68 61 74 20 6d 61 | 79 20 64 75 6d 70 20 63 |.that ma|y dump c|
|00002680| 6f 72 65 20 77 68 65 6e | 20 63 61 6c 6c 65 64 20 |ore when| called |
|00002690| 61 66 74 65 72 20 61 6e | 79 20 49 2f 4f 20 68 61 |after an|y I/O ha|
|000026a0| 73 20 62 65 65 6e 20 70 | 65 72 66 6f 72 6d 65 64 |s been p|erformed|
|000026b0| 2c 20 61 6e 64 0d 74 68 | 65 72 65 27 73 20 6e 6f |, and.th|ere's no|
|000026c0| 20 72 65 6c 69 61 62 6c | 65 20 77 61 79 20 74 6f | reliabl|e way to|
|000026d0| 20 64 65 74 65 72 6d 69 | 6e 65 20 77 68 65 74 68 | determi|ne wheth|
|000026e0| 65 72 20 74 68 69 73 20 | 69 73 20 74 68 65 20 63 |er this |is the c|
|000026f0| 61 73 65 2e 7d 0d 5c 65 | 6e 64 7b 66 75 6e 63 64 |ase.}.\e|nd{funcd|
|00002700| 65 73 63 7d 0d 0d 5c 62 | 65 67 69 6e 7b 66 75 6e |esc}..\b|egin{fun|
|00002710| 63 64 65 73 63 7d 7b 6f | 72 64 7d 7b 63 7d 0d 20 |cdesc}{o|rd}{c}. |
|00002720| 20 52 65 74 75 72 6e 20 | 74 68 65 20 5c 41 53 43 | Return |the \ASC|
|00002730| 49 49 7b 7d 20 76 61 6c | 75 65 20 6f 66 20 61 20 |II{} val|ue of a |
|00002740| 73 74 72 69 6e 67 20 6f | 66 20 6f 6e 65 20 63 68 |string o|f one ch|
|00002750| 61 72 61 63 74 65 72 2e | 20 20 45 2e 67 2e 2c 0d |aracter.| E.g.,.|
|00002760| 20 20 5c 63 6f 64 65 7b | 6f 72 64 28 27 61 27 29 | \code{|ord('a')|
|00002770| 7d 20 72 65 74 75 72 6e | 73 20 74 68 65 20 69 6e |} return|s the in|
|00002780| 74 65 67 65 72 20 5c 63 | 6f 64 65 7b 39 37 7d 2e |teger \c|ode{97}.|
|00002790| 20 20 54 68 69 73 20 69 | 73 20 74 68 65 20 69 6e | This i|s the in|
|000027a0| 76 65 72 73 65 20 6f 66 | 0d 20 20 5c 63 6f 64 65 |verse of|. \code|
|000027b0| 7b 63 68 72 28 29 7d 2e | 0d 5c 65 6e 64 7b 66 75 |{chr()}.|.\end{fu|
|000027c0| 6e 63 64 65 73 63 7d 0d | 0d 5c 62 65 67 69 6e 7b |ncdesc}.|.\begin{|
|000027d0| 66 75 6e 63 64 65 73 63 | 7d 7b 70 6f 77 7d 7b 78 |funcdesc|}{pow}{x|
|000027e0| 5c 2c 20 79 5c 6f 70 74 | 69 6f 6e 61 6c 7b 5c 2c |\, y\opt|ional{\,|
|000027f0| 20 7a 7d 7d 0d 20 20 52 | 65 74 75 72 6e 20 5c 76 | z}}. R|eturn \v|
|00002800| 61 72 7b 78 7d 20 74 6f | 20 74 68 65 20 70 6f 77 |ar{x} to| the pow|
|00002810| 65 72 20 5c 76 61 72 7b | 79 7d 3b 20 69 66 20 5c |er \var{|y}; if \|
|00002820| 76 61 72 7b 7a 7d 20 69 | 73 20 70 72 65 73 65 6e |var{z} i|s presen|
|00002830| 74 2c 20 72 65 74 75 72 | 6e 0d 20 20 5c 76 61 72 |t, retur|n. \var|
|00002840| 7b 78 7d 20 74 6f 20 74 | 68 65 20 70 6f 77 65 72 |{x} to t|he power|
|00002850| 20 5c 76 61 72 7b 79 7d | 2c 20 6d 6f 64 75 6c 6f | \var{y}|, modulo|
|00002860| 20 5c 76 61 72 7b 7a 7d | 20 28 63 6f 6d 70 75 74 | \var{z}| (comput|
|00002870| 65 64 20 6d 6f 72 65 0d | 20 20 65 66 66 69 63 69 |ed more.| effici|
|00002880| 65 6e 74 6c 79 20 74 68 | 61 74 20 5c 63 6f 64 65 |ently th|at \code|
|00002890| 7b 70 6f 77 28 5c 76 61 | 72 7b 78 7d 2c 20 5c 76 |{pow(\va|r{x}, \v|
|000028a0| 61 72 7b 79 7d 29 20 5c | 25 20 5c 76 61 72 7b 7a |ar{y}) \|% \var{z|
|000028b0| 7d 7d 29 2e 0d 20 20 54 | 68 65 20 61 72 67 75 6d |}}).. T|he argum|
|000028c0| 65 6e 74 73 20 6d 75 73 | 74 20 68 61 76 65 0d 20 |ents mus|t have. |
|000028d0| 20 6e 75 6d 65 72 69 63 | 20 74 79 70 65 73 2e 20 | numeric| types. |
|000028e0| 20 57 69 74 68 20 6d 69 | 78 65 64 20 6f 70 65 72 | With mi|xed oper|
|000028f0| 61 6e 64 20 74 79 70 65 | 73 2c 20 74 68 65 20 72 |and type|s, the r|
|00002900| 75 6c 65 73 20 66 6f 72 | 20 62 69 6e 61 72 79 0d |ules for| binary.|
|00002910| 20 20 61 72 69 74 68 6d | 65 74 69 63 20 6f 70 65 | arithm|etic ope|
|00002920| 72 61 74 6f 72 73 20 61 | 70 70 6c 79 2e 20 20 54 |rators a|pply. T|
|00002930| 68 65 20 65 66 66 65 63 | 74 69 76 65 20 6f 70 65 |he effec|tive ope|
|00002940| 72 61 6e 64 20 74 79 70 | 65 20 69 73 20 61 6c 73 |rand typ|e is als|
|00002950| 6f 20 74 68 65 0d 20 20 | 74 79 70 65 20 6f 66 20 |o the. |type of |
|00002960| 74 68 65 20 72 65 73 75 | 6c 74 3b 20 69 66 20 74 |the resu|lt; if t|
|00002970| 68 65 20 72 65 73 75 6c | 74 20 69 73 20 6e 6f 74 |he resul|t is not|
|00002980| 20 65 78 70 72 65 73 73 | 69 62 6c 65 20 69 6e 20 | express|ible in |
|00002990| 74 68 69 73 20 74 79 70 | 65 2c 20 74 68 65 0d 20 |this typ|e, the. |
|000029a0| 20 66 75 6e 63 74 69 6f | 6e 20 72 61 69 73 65 73 | functio|n raises|
|000029b0| 20 61 6e 20 65 78 63 65 | 70 74 69 6f 6e 3b 20 65 | an exce|ption; e|
|000029c0| 2e 67 2e 2c 20 5c 63 6f | 64 65 7b 70 6f 77 28 32 |.g., \co|de{pow(2|
|000029d0| 2c 20 2d 31 29 7d 20 6f | 72 20 5c 63 6f 64 65 7b |, -1)} o|r \code{|
|000029e0| 70 6f 77 28 32 2c 0d 20 | 20 33 35 30 30 30 29 7d |pow(2,. | 35000)}|
|000029f0| 20 69 73 20 6e 6f 74 20 | 61 6c 6c 6f 77 65 64 2e | is not |allowed.|
|00002a00| 0d 5c 65 6e 64 7b 66 75 | 6e 63 64 65 73 63 7d 0d |.\end{fu|ncdesc}.|
|00002a10| 0d 5c 62 65 67 69 6e 7b | 66 75 6e 63 64 65 73 63 |.\begin{|funcdesc|
|00002a20| 7d 7b 72 61 6e 67 65 7d | 7b 5c 6f 70 74 69 6f 6e |}{range}|{\option|
|00002a30| 61 6c 7b 73 74 61 72 74 | 5c 2c 7d 20 65 6e 64 5c |al{start|\,} end\|
|00002a40| 6f 70 74 69 6f 6e 61 6c | 7b 5c 2c 20 73 74 65 70 |optional|{\, step|
|00002a50| 7d 7d 0d 20 20 54 68 69 | 73 20 69 73 20 61 20 76 |}}. Thi|s is a v|
|00002a60| 65 72 73 61 74 69 6c 65 | 20 66 75 6e 63 74 69 6f |ersatile| functio|
|00002a70| 6e 20 74 6f 20 63 72 65 | 61 74 65 20 6c 69 73 74 |n to cre|ate list|
|00002a80| 73 20 63 6f 6e 74 61 69 | 6e 69 6e 67 20 61 72 69 |s contai|ning ari|
|00002a90| 74 68 6d 65 74 69 63 0d | 20 20 70 72 6f 67 72 65 |thmetic.| progre|
|00002aa0| 73 73 69 6f 6e 73 2e 20 | 20 49 74 20 69 73 20 6d |ssions. | It is m|
|00002ab0| 6f 73 74 20 6f 66 74 65 | 6e 20 75 73 65 64 20 69 |ost ofte|n used i|
|00002ac0| 6e 20 5c 63 6f 64 65 7b | 66 6f 72 7d 20 6c 6f 6f |n \code{|for} loo|
|00002ad0| 70 73 2e 20 20 54 68 65 | 0d 20 20 61 72 67 75 6d |ps. The|. argum|
|00002ae0| 65 6e 74 73 20 6d 75 73 | 74 20 62 65 20 70 6c 61 |ents mus|t be pla|
|00002af0| 69 6e 20 69 6e 74 65 67 | 65 72 73 2e 20 20 49 66 |in integ|ers. If|
|00002b00| 20 74 68 65 20 5c 76 61 | 72 7b 73 74 65 70 7d 20 | the \va|r{step} |
|00002b10| 61 72 67 75 6d 65 6e 74 | 20 69 73 0d 20 20 6f 6d |argument| is. om|
|00002b20| 69 74 74 65 64 2c 20 69 | 74 20 64 65 66 61 75 6c |itted, i|t defaul|
|00002b30| 74 73 20 74 6f 20 5c 63 | 6f 64 65 7b 31 7d 2e 20 |ts to \c|ode{1}. |
|00002b40| 20 49 66 20 74 68 65 20 | 5c 76 61 72 7b 73 74 61 | If the |\var{sta|
|00002b50| 72 74 7d 20 61 72 67 75 | 6d 65 6e 74 20 69 73 0d |rt} argu|ment is.|
|00002b60| 20 20 6f 6d 69 74 74 65 | 64 2c 20 69 74 20 64 65 | omitte|d, it de|
|00002b70| 66 61 75 6c 74 73 20 74 | 6f 20 5c 63 6f 64 65 7b |faults t|o \code{|
|00002b80| 30 7d 2e 20 20 54 68 65 | 20 66 75 6c 6c 20 66 6f |0}. The| full fo|
|00002b90| 72 6d 20 72 65 74 75 72 | 6e 73 20 61 20 6c 69 73 |rm retur|ns a lis|
|00002ba0| 74 20 6f 66 0d 20 20 70 | 6c 61 69 6e 20 69 6e 74 |t of. p|lain int|
|00002bb0| 65 67 65 72 73 20 5c 63 | 6f 64 65 7b 5b 5c 76 61 |egers \c|ode{[\va|
|00002bc0| 72 7b 73 74 61 72 74 7d | 2c 20 5c 76 61 72 7b 73 |r{start}|, \var{s|
|00002bd0| 74 61 72 74 7d 20 2b 20 | 5c 76 61 72 7b 73 74 65 |tart} + |\var{ste|
|00002be0| 70 7d 2c 0d 20 20 5c 76 | 61 72 7b 73 74 61 72 74 |p},. \v|ar{start|
|00002bf0| 7d 20 2b 20 32 20 2a 20 | 5c 76 61 72 7b 73 74 65 |} + 2 * |\var{ste|
|00002c00| 70 7d 2c 20 5c 6c 64 6f | 74 73 5d 7d 2e 20 20 49 |p}, \ldo|ts]}. I|
|00002c10| 66 20 5c 76 61 72 7b 73 | 74 65 70 7d 20 69 73 20 |f \var{s|tep} is |
|00002c20| 70 6f 73 69 74 69 76 65 | 2c 0d 20 20 74 68 65 20 |positive|,. the |
|00002c30| 6c 61 73 74 20 65 6c 65 | 6d 65 6e 74 20 69 73 20 |last ele|ment is |
|00002c40| 74 68 65 20 6c 61 72 67 | 65 73 74 20 5c 63 6f 64 |the larg|est \cod|
|00002c50| 65 7b 5c 76 61 72 7b 73 | 74 61 72 74 7d 20 2b 20 |e{\var{s|tart} + |
|00002c60| 5c 76 61 72 7b 69 7d 20 | 2a 0d 20 20 5c 76 61 72 |\var{i} |*. \var|
|00002c70| 7b 73 74 65 70 7d 7d 20 | 6c 65 73 73 20 74 68 61 |{step}} |less tha|
|00002c80| 6e 20 5c 76 61 72 7b 65 | 6e 64 7d 3b 20 69 66 20 |n \var{e|nd}; if |
|00002c90| 5c 76 61 72 7b 73 74 65 | 70 7d 20 69 73 20 6e 65 |\var{ste|p} is ne|
|00002ca0| 67 61 74 69 76 65 2c 20 | 74 68 65 20 6c 61 73 74 |gative, |the last|
|00002cb0| 0d 20 20 65 6c 65 6d 65 | 6e 74 20 69 73 20 74 68 |. eleme|nt is th|
|00002cc0| 65 20 6c 61 72 67 65 73 | 74 20 5c 63 6f 64 65 7b |e larges|t \code{|
|00002cd0| 5c 76 61 72 7b 73 74 61 | 72 74 7d 20 2b 20 5c 76 |\var{sta|rt} + \v|
|00002ce0| 61 72 7b 69 7d 20 2a 20 | 5c 76 61 72 7b 73 74 65 |ar{i} * |\var{ste|
|00002cf0| 70 7d 7d 0d 20 20 67 72 | 65 61 74 65 72 20 74 68 |p}}. gr|eater th|
|00002d00| 61 6e 20 5c 76 61 72 7b | 65 6e 64 7d 2e 20 20 5c |an \var{|end}. \|
|00002d10| 76 61 72 7b 73 74 65 70 | 7d 20 6d 75 73 74 20 6e |var{step|} must n|
|00002d20| 6f 74 20 62 65 20 7a 65 | 72 6f 2e 20 20 45 78 61 |ot be ze|ro. Exa|
|00002d30| 6d 70 6c 65 3a 0d 0d 5c | 62 63 6f 64 65 5c 62 65 |mple:..\|bcode\be|
|00002d40| 67 69 6e 7b 76 65 72 62 | 61 74 69 6d 7d 0d 3e 3e |gin{verb|atim}.>>|
|00002d50| 3e 20 72 61 6e 67 65 28 | 31 30 29 0d 5b 30 2c 20 |> range(|10).[0, |
|00002d60| 31 2c 20 32 2c 20 33 2c | 20 34 2c 20 35 2c 20 36 |1, 2, 3,| 4, 5, 6|
|00002d70| 2c 20 37 2c 20 38 2c 20 | 39 5d 0d 3e 3e 3e 20 72 |, 7, 8, |9].>>> r|
|00002d80| 61 6e 67 65 28 31 2c 20 | 31 31 29 0d 5b 31 2c 20 |ange(1, |11).[1, |
|00002d90| 32 2c 20 33 2c 20 34 2c | 20 35 2c 20 36 2c 20 37 |2, 3, 4,| 5, 6, 7|
|00002da0| 2c 20 38 2c 20 39 2c 20 | 31 30 5d 0d 3e 3e 3e 20 |, 8, 9, |10].>>> |
|00002db0| 72 61 6e 67 65 28 30 2c | 20 33 30 2c 20 35 29 0d |range(0,| 30, 5).|
|00002dc0| 5b 30 2c 20 35 2c 20 31 | 30 2c 20 31 35 2c 20 32 |[0, 5, 1|0, 15, 2|
|00002dd0| 30 2c 20 32 35 5d 0d 3e | 3e 3e 20 72 61 6e 67 65 |0, 25].>|>> range|
|00002de0| 28 30 2c 20 31 30 2c 20 | 33 29 0d 5b 30 2c 20 33 |(0, 10, |3).[0, 3|
|00002df0| 2c 20 36 2c 20 39 5d 0d | 3e 3e 3e 20 72 61 6e 67 |, 6, 9].|>>> rang|
|00002e00| 65 28 30 2c 20 2d 31 30 | 2c 20 2d 31 29 0d 5b 30 |e(0, -10|, -1).[0|
|00002e10| 2c 20 2d 31 2c 20 2d 32 | 2c 20 2d 33 2c 20 2d 34 |, -1, -2|, -3, -4|
|00002e20| 2c 20 2d 35 2c 20 2d 36 | 2c 20 2d 37 2c 20 2d 38 |, -5, -6|, -7, -8|
|00002e30| 2c 20 2d 39 5d 0d 3e 3e | 3e 20 72 61 6e 67 65 28 |, -9].>>|> range(|
|00002e40| 30 29 0d 5b 5d 0d 3e 3e | 3e 20 72 61 6e 67 65 28 |0).[].>>|> range(|
|00002e50| 31 2c 20 30 29 0d 5b 5d | 0d 3e 3e 3e 20 0d 5c 65 |1, 0).[]|.>>> .\e|
|00002e60| 6e 64 7b 76 65 72 62 61 | 74 69 6d 7d 5c 65 63 6f |nd{verba|tim}\eco|
|00002e70| 64 65 0d 5c 65 6e 64 7b | 66 75 6e 63 64 65 73 63 |de.\end{|funcdesc|
|00002e80| 7d 0d 0d 5c 62 65 67 69 | 6e 7b 66 75 6e 63 64 65 |}..\begi|n{funcde|
|00002e90| 73 63 7d 7b 72 61 77 5f | 69 6e 70 75 74 7d 7b 5c |sc}{raw_|input}{\|
|00002ea0| 6f 70 74 69 6f 6e 61 6c | 7b 70 72 6f 6d 70 74 7d |optional|{prompt}|
|00002eb0| 7d 0d 20 20 49 66 20 74 | 68 65 20 5c 76 61 72 7b |}. If t|he \var{|
|00002ec0| 70 72 6f 6d 70 74 7d 20 | 61 72 67 75 6d 65 6e 74 |prompt} |argument|
|00002ed0| 20 69 73 20 70 72 65 73 | 65 6e 74 2c 20 69 74 20 | is pres|ent, it |
|00002ee0| 69 73 20 77 72 69 74 74 | 65 6e 20 74 6f 20 73 74 |is writt|en to st|
|00002ef0| 61 6e 64 61 72 64 20 6f | 75 74 70 75 74 0d 20 20 |andard o|utput. |
|00002f00| 77 69 74 68 6f 75 74 20 | 61 20 74 72 61 69 6c 69 |without |a traili|
|00002f10| 6e 67 20 6e 65 77 6c 69 | 6e 65 2e 20 20 54 68 65 |ng newli|ne. The|
|00002f20| 20 66 75 6e 63 74 69 6f | 6e 20 74 68 65 6e 20 72 | functio|n then r|
|00002f30| 65 61 64 73 20 61 20 6c | 69 6e 65 20 66 72 6f 6d |eads a l|ine from|
|00002f40| 20 69 6e 70 75 74 2c 0d | 20 20 63 6f 6e 76 65 72 | input,.| conver|
|00002f50| 74 73 20 69 74 20 74 6f | 20 61 20 73 74 72 69 6e |ts it to| a strin|
|00002f60| 67 20 28 73 74 72 69 70 | 70 69 6e 67 20 61 20 74 |g (strip|ping a t|
|00002f70| 72 61 69 6c 69 6e 67 20 | 6e 65 77 6c 69 6e 65 29 |railing |newline)|
|00002f80| 2c 20 61 6e 64 20 72 65 | 74 75 72 6e 73 20 74 68 |, and re|turns th|
|00002f90| 61 74 2e 0d 20 20 57 68 | 65 6e 20 5c 45 4f 46 7b |at.. Wh|en \EOF{|
|00002fa0| 7d 20 69 73 20 72 65 61 | 64 2c 20 5c 63 6f 64 65 |} is rea|d, \code|
|00002fb0| 7b 45 4f 46 45 72 72 6f | 72 7d 20 69 73 20 72 61 |{EOFErro|r} is ra|
|00002fc0| 69 73 65 64 2e 20 45 78 | 61 6d 70 6c 65 3a 0d 0d |ised. Ex|ample:..|
|00002fd0| 5c 62 63 6f 64 65 5c 62 | 65 67 69 6e 7b 76 65 72 |\bcode\b|egin{ver|
|00002fe0| 62 61 74 69 6d 7d 0d 3e | 3e 3e 20 73 20 3d 20 72 |batim}.>|>> s = r|
|00002ff0| 61 77 5f 69 6e 70 75 74 | 28 27 2d 2d 3e 20 27 29 |aw_input|('--> ')|
|00003000| 0d 2d 2d 3e 20 4d 6f 6e | 74 79 20 50 79 74 68 6f |.--> Mon|ty Pytho|
|00003010| 6e 27 73 20 46 6c 79 69 | 6e 67 20 43 69 72 63 75 |n's Flyi|ng Circu|
|00003020| 73 0d 3e 3e 3e 20 73 0d | 27 4d 6f 6e 74 79 20 50 |s.>>> s.|'Monty P|
|00003030| 79 74 68 6f 6e 5c 27 73 | 20 46 6c 79 69 6e 67 20 |ython\'s| Flying |
|00003040| 43 69 72 63 75 73 27 0d | 3e 3e 3e 20 0d 5c 65 6e |Circus'.|>>> .\en|
|00003050| 64 7b 76 65 72 62 61 74 | 69 6d 7d 5c 65 63 6f 64 |d{verbat|im}\ecod|
|00003060| 65 0d 5c 65 6e 64 7b 66 | 75 6e 63 64 65 73 63 7d |e.\end{f|uncdesc}|
|00003070| 0d 0d 5c 62 65 67 69 6e | 7b 66 75 6e 63 64 65 73 |..\begin|{funcdes|
|00003080| 63 7d 7b 72 65 64 75 63 | 65 7d 7b 66 75 6e 63 74 |c}{reduc|e}{funct|
|00003090| 69 6f 6e 5c 2c 20 6c 69 | 73 74 5c 6f 70 74 69 6f |ion\, li|st\optio|
|000030a0| 6e 61 6c 7b 5c 2c 20 69 | 6e 69 74 69 61 6c 69 7a |nal{\, i|nitializ|
|000030b0| 65 72 7d 7d 0d 41 70 70 | 6c 79 20 74 68 65 20 62 |er}}.App|ly the b|
|000030c0| 69 6e 61 72 79 20 5c 76 | 61 72 7b 66 75 6e 63 74 |inary \v|ar{funct|
|000030d0| 69 6f 6e 7d 20 74 6f 20 | 74 68 65 20 69 74 65 6d |ion} to |the item|
|000030e0| 73 20 6f 66 20 5c 76 61 | 72 7b 6c 69 73 74 7d 20 |s of \va|r{list} |
|000030f0| 73 6f 20 61 73 20 74 6f | 0d 72 65 64 75 63 65 20 |so as to|.reduce |
|00003100| 74 68 65 20 6c 69 73 74 | 20 74 6f 20 61 20 73 69 |the list| to a si|
|00003110| 6e 67 6c 65 20 76 61 6c | 75 65 2e 20 20 45 2e 67 |ngle val|ue. E.g|
|00003120| 2e 2c 0d 5c 63 6f 64 65 | 7b 72 65 64 75 63 65 28 |.,.\code|{reduce(|
|00003130| 6c 61 6d 62 64 61 20 78 | 2c 20 79 3a 20 78 2a 79 |lambda x|, y: x*y|
|00003140| 2c 20 5c 76 61 72 7b 6c | 69 73 74 7d 2c 20 31 29 |, \var{l|ist}, 1)|
|00003150| 7d 20 72 65 74 75 72 6e | 73 20 74 68 65 20 70 72 |} return|s the pr|
|00003160| 6f 64 75 63 74 20 6f 66 | 0d 74 68 65 20 65 6c 65 |oduct of|.the ele|
|00003170| 6d 65 6e 74 73 20 6f 66 | 20 5c 76 61 72 7b 6c 69 |ments of| \var{li|
|00003180| 73 74 7d 2e 20 20 54 68 | 65 20 6f 70 74 69 6f 6e |st}. Th|e option|
|00003190| 61 6c 20 5c 76 61 72 7b | 69 6e 69 74 69 61 6c 69 |al \var{|initiali|
|000031a0| 7a 65 72 7d 20 63 61 6e | 20 62 65 0d 74 68 6f 75 |zer} can| be.thou|
|000031b0| 67 68 74 20 6f 66 20 61 | 73 20 62 65 69 6e 67 20 |ght of a|s being |
|000031c0| 70 72 65 70 65 6e 64 65 | 64 20 74 6f 20 5c 76 61 |prepende|d to \va|
|000031d0| 72 7b 6c 69 73 74 7d 20 | 73 6f 20 61 73 20 74 6f |r{list} |so as to|
|000031e0| 20 61 6c 6c 6f 77 20 72 | 65 64 75 63 74 69 6f 6e | allow r|eduction|
|000031f0| 0d 6f 66 20 61 6e 20 65 | 6d 70 74 79 20 5c 76 61 |.of an e|mpty \va|
|00003200| 72 7b 6c 69 73 74 7d 2e | 20 20 54 68 65 20 5c 76 |r{list}.| The \v|
|00003210| 61 72 7b 6c 69 73 74 7d | 20 61 72 67 75 6d 65 6e |ar{list}| argumen|
|00003220| 74 73 20 6d 61 79 20 62 | 65 20 61 6e 79 20 6b 69 |ts may b|e any ki|
|00003230| 6e 64 20 6f 66 0d 73 65 | 71 75 65 6e 63 65 2e 0d |nd of.se|quence..|
|00003240| 5c 65 6e 64 7b 66 75 6e | 63 64 65 73 63 7d 0d 0d |\end{fun|cdesc}..|
|00003250| 5c 62 65 67 69 6e 7b 66 | 75 6e 63 64 65 73 63 7d |\begin{f|uncdesc}|
|00003260| 7b 72 65 6c 6f 61 64 7d | 7b 6d 6f 64 75 6c 65 7d |{reload}|{module}|
|00003270| 0d 20 20 52 65 2d 70 61 | 72 73 65 20 61 6e 64 20 |. Re-pa|rse and |
|00003280| 72 65 2d 69 6e 69 74 69 | 61 6c 69 7a 65 20 61 6e |re-initi|alize an|
|00003290| 20 61 6c 72 65 61 64 79 | 20 69 6d 70 6f 72 74 65 | already| importe|
|000032a0| 64 20 5c 76 61 72 7b 6d | 6f 64 75 6c 65 7d 2e 20 |d \var{m|odule}. |
|000032b0| 20 54 68 65 0d 20 20 61 | 72 67 75 6d 65 6e 74 20 | The. a|rgument |
|000032c0| 6d 75 73 74 20 62 65 20 | 61 20 6d 6f 64 75 6c 65 |must be |a module|
|000032d0| 20 6f 62 6a 65 63 74 2c | 20 73 6f 20 69 74 20 6d | object,| so it m|
|000032e0| 75 73 74 20 68 61 76 65 | 20 62 65 65 6e 20 73 75 |ust have| been su|
|000032f0| 63 63 65 73 73 66 75 6c | 6c 79 0d 20 20 69 6d 70 |ccessful|ly. imp|
|00003300| 6f 72 74 65 64 20 62 65 | 66 6f 72 65 2e 20 20 54 |orted be|fore. T|
|00003310| 68 69 73 20 69 73 20 75 | 73 65 66 75 6c 20 69 66 |his is u|seful if|
|00003320| 20 79 6f 75 20 68 61 76 | 65 20 65 64 69 74 65 64 | you hav|e edited|
|00003330| 20 74 68 65 20 6d 6f 64 | 75 6c 65 20 73 6f 75 72 | the mod|ule sour|
|00003340| 63 65 0d 20 20 66 69 6c | 65 20 75 73 69 6e 67 20 |ce. fil|e using |
|00003350| 61 6e 20 65 78 74 65 72 | 6e 61 6c 20 65 64 69 74 |an exter|nal edit|
|00003360| 6f 72 20 61 6e 64 20 77 | 61 6e 74 20 74 6f 20 74 |or and w|ant to t|
|00003370| 72 79 20 6f 75 74 20 74 | 68 65 20 6e 65 77 20 76 |ry out t|he new v|
|00003380| 65 72 73 69 6f 6e 0d 20 | 20 77 69 74 68 6f 75 74 |ersion. | without|
|00003390| 20 6c 65 61 76 69 6e 67 | 20 74 68 65 20 50 79 74 | leaving| the Pyt|
|000033a0| 68 6f 6e 20 69 6e 74 65 | 72 70 72 65 74 65 72 2e |hon inte|rpreter.|
|000033b0| 20 20 4e 6f 74 65 20 74 | 68 61 74 20 69 66 20 61 | Note t|hat if a|
|000033c0| 20 6d 6f 64 75 6c 65 20 | 69 73 0d 20 20 73 79 6e | module |is. syn|
|000033d0| 74 61 63 74 69 63 61 6c | 6c 79 20 63 6f 72 72 65 |tactical|ly corre|
|000033e0| 63 74 20 62 75 74 20 69 | 74 73 20 69 6e 69 74 69 |ct but i|ts initi|
|000033f0| 61 6c 69 7a 61 74 69 6f | 6e 20 66 61 69 6c 73 2c |alizatio|n fails,|
|00003400| 20 74 68 65 20 66 69 72 | 73 74 0d 20 20 5c 63 6f | the fir|st. \co|
|00003410| 64 65 7b 69 6d 70 6f 72 | 74 7d 20 73 74 61 74 65 |de{impor|t} state|
|00003420| 6d 65 6e 74 20 66 6f 72 | 20 69 74 20 64 6f 65 73 |ment for| it does|
|00003430| 20 6e 6f 74 20 69 6d 70 | 6f 72 74 20 74 68 65 20 | not imp|ort the |
|00003440| 6e 61 6d 65 2c 20 62 75 | 74 20 64 6f 65 73 0d 20 |name, bu|t does. |
|00003450| 20 63 72 65 61 74 65 20 | 61 20 28 70 61 72 74 69 | create |a (parti|
|00003460| 61 6c 6c 79 20 69 6e 69 | 74 69 61 6c 69 7a 65 64 |ally ini|tialized|
|00003470| 29 20 6d 6f 64 75 6c 65 | 20 6f 62 6a 65 63 74 3b |) module| object;|
|00003480| 20 74 6f 20 72 65 6c 6f | 61 64 20 74 68 65 20 6d | to relo|ad the m|
|00003490| 6f 64 75 6c 65 0d 20 20 | 79 6f 75 20 6d 75 73 74 |odule. |you must|
|000034a0| 20 66 69 72 73 74 20 5c | 63 6f 64 65 7b 69 6d 70 | first \|code{imp|
|000034b0| 6f 72 74 7d 20 69 74 20 | 61 67 61 69 6e 20 28 74 |ort} it |again (t|
|000034c0| 68 69 73 20 77 69 6c 6c | 20 6a 75 73 74 20 6d 61 |his will| just ma|
|000034d0| 6b 65 20 74 68 65 0d 20 | 20 70 61 72 74 69 61 6c |ke the. | partial|
|000034e0| 6c 79 20 69 6e 69 74 69 | 61 6c 69 7a 65 64 20 6d |ly initi|alized m|
|000034f0| 6f 64 75 6c 65 20 6f 62 | 6a 65 63 74 20 61 76 61 |odule ob|ject ava|
|00003500| 69 6c 61 62 6c 65 29 20 | 62 65 66 6f 72 65 20 79 |ilable) |before y|
|00003510| 6f 75 20 63 61 6e 0d 20 | 20 5c 63 6f 64 65 7b 72 |ou can. | \code{r|
|00003520| 65 6c 6f 61 64 28 29 7d | 20 69 74 2e 0d 5c 65 6e |eload()}| it..\en|
|00003530| 64 7b 66 75 6e 63 64 65 | 73 63 7d 0d 0d 5c 62 65 |d{funcde|sc}..\be|
|00003540| 67 69 6e 7b 66 75 6e 63 | 64 65 73 63 7d 7b 72 65 |gin{func|desc}{re|
|00003550| 70 72 7d 7b 6f 62 6a 65 | 63 74 7d 0d 52 65 74 75 |pr}{obje|ct}.Retu|
|00003560| 72 6e 20 61 20 73 74 72 | 69 6e 67 20 63 6f 6e 74 |rn a str|ing cont|
|00003570| 61 69 6e 69 6e 67 20 61 | 20 70 72 69 6e 74 61 62 |aining a| printab|
|00003580| 6c 65 20 72 65 70 72 65 | 73 65 6e 74 61 74 69 6f |le repre|sentatio|
|00003590| 6e 20 6f 66 20 61 6e 20 | 6f 62 6a 65 63 74 2e 0d |n of an |object..|
|000035a0| 54 68 69 73 20 69 73 20 | 74 68 65 20 73 61 6d 65 |This is |the same|
|000035b0| 20 76 61 6c 75 65 20 79 | 69 65 6c 64 65 64 20 62 | value y|ielded b|
|000035c0| 79 20 63 6f 6e 76 65 72 | 73 69 6f 6e 73 20 28 72 |y conver|sions (r|
|000035d0| 65 76 65 72 73 65 20 71 | 75 6f 74 65 73 29 2e 0d |everse q|uotes)..|
|000035e0| 49 74 20 69 73 20 73 6f | 6d 65 74 69 6d 65 73 20 |It is so|metimes |
|000035f0| 75 73 65 66 75 6c 20 74 | 6f 20 62 65 20 61 62 6c |useful t|o be abl|
|00003600| 65 20 74 6f 20 61 63 63 | 65 73 73 20 74 68 69 73 |e to acc|ess this|
|00003610| 20 6f 70 65 72 61 74 69 | 6f 6e 20 61 73 20 61 6e | operati|on as an|
|00003620| 0d 6f 72 64 69 6e 61 72 | 79 20 66 75 6e 63 74 69 |.ordinar|y functi|
|00003630| 6f 6e 2e 20 20 46 6f 72 | 20 6d 61 6e 79 20 74 79 |on. For| many ty|
|00003640| 70 65 73 2c 20 74 68 69 | 73 20 66 75 6e 63 74 69 |pes, thi|s functi|
|00003650| 6f 6e 20 6d 61 6b 65 73 | 20 61 6e 20 61 74 74 65 |on makes| an atte|
|00003660| 6d 70 74 0d 74 6f 20 72 | 65 74 75 72 6e 20 61 20 |mpt.to r|eturn a |
|00003670| 73 74 72 69 6e 67 20 74 | 68 61 74 20 77 6f 75 6c |string t|hat woul|
|00003680| 64 20 79 69 65 6c 64 20 | 61 6e 20 6f 62 6a 65 63 |d yield |an objec|
|00003690| 74 20 77 69 74 68 20 74 | 68 65 20 73 61 6d 65 20 |t with t|he same |
|000036a0| 76 61 6c 75 65 0d 77 68 | 65 6e 20 70 61 73 73 65 |value.wh|en passe|
|000036b0| 64 20 74 6f 20 5c 63 6f | 64 65 7b 65 76 61 6c 28 |d to \co|de{eval(|
|000036c0| 29 7d 2e 0d 5c 65 6e 64 | 7b 66 75 6e 63 64 65 73 |)}..\end|{funcdes|
|000036d0| 63 7d 0d 0d 5c 62 65 67 | 69 6e 7b 66 75 6e 63 64 |c}..\beg|in{funcd|
|000036e0| 65 73 63 7d 7b 72 6f 75 | 6e 64 7d 7b 78 5c 2c 20 |esc}{rou|nd}{x\, |
|000036f0| 6e 7d 0d 20 20 52 65 74 | 75 72 6e 20 74 68 65 20 |n}. Ret|urn the |
|00003700| 66 6c 6f 61 74 69 6e 67 | 20 70 6f 69 6e 74 20 76 |floating| point v|
|00003710| 61 6c 75 65 20 5c 76 61 | 72 7b 78 7d 20 72 6f 75 |alue \va|r{x} rou|
|00003720| 6e 64 65 64 20 74 6f 20 | 5c 76 61 72 7b 6e 7d 20 |nded to |\var{n} |
|00003730| 64 69 67 69 74 73 0d 20 | 20 61 66 74 65 72 20 74 |digits. | after t|
|00003740| 68 65 20 64 65 63 69 6d | 61 6c 20 70 6f 69 6e 74 |he decim|al point|
|00003750| 2e 20 20 49 66 20 5c 76 | 61 72 7b 6e 7d 20 69 73 |. If \v|ar{n} is|
|00003760| 20 6f 6d 69 74 74 65 64 | 2c 20 69 74 20 64 65 66 | omitted|, it def|
|00003770| 61 75 6c 74 73 20 74 6f | 20 7a 65 72 6f 2e 0d 20 |aults to| zero.. |
|00003780| 20 54 68 65 20 72 65 73 | 75 6c 74 20 69 73 20 61 | The res|ult is a|
|00003790| 20 66 6c 6f 61 74 69 6e | 67 20 70 6f 69 6e 74 20 | floatin|g point |
|000037a0| 6e 75 6d 62 65 72 2e 20 | 20 56 61 6c 75 65 73 20 |number. | Values |
|000037b0| 61 72 65 20 72 6f 75 6e | 64 65 64 20 74 6f 20 74 |are roun|ded to t|
|000037c0| 68 65 0d 20 20 63 6c 6f | 73 65 73 74 20 6d 75 6c |he. clo|sest mul|
|000037d0| 74 69 70 6c 65 20 6f 66 | 20 31 30 20 74 6f 20 74 |tiple of| 10 to t|
|000037e0| 68 65 20 70 6f 77 65 72 | 20 6d 69 6e 75 73 20 5c |he power| minus \|
|000037f0| 76 61 72 7b 6e 7d 3b 20 | 69 66 20 74 77 6f 20 6d |var{n}; |if two m|
|00003800| 75 6c 74 69 70 6c 65 73 | 0d 20 20 61 72 65 20 65 |ultiples|. are e|
|00003810| 71 75 61 6c 6c 79 20 63 | 6c 6f 73 65 2c 20 72 6f |qually c|lose, ro|
|00003820| 75 6e 64 69 6e 67 20 69 | 73 20 64 6f 6e 65 20 61 |unding i|s done a|
|00003830| 77 61 79 20 66 72 6f 6d | 20 30 20 28 73 6f 20 65 |way from| 0 (so e|
|00003840| 2e 67 2e 0d 20 20 5c 63 | 6f 64 65 7b 72 6f 75 6e |.g.. \c|ode{roun|
|00003850| 64 28 30 2e 35 29 7d 20 | 69 73 20 5c 63 6f 64 65 |d(0.5)} |is \code|
|00003860| 7b 31 2e 30 7d 20 61 6e | 64 20 5c 63 6f 64 65 7b |{1.0} an|d \code{|
|00003870| 72 6f 75 6e 64 28 2d 30 | 2e 35 29 7d 20 69 73 20 |round(-0|.5)} is |
|00003880| 5c 63 6f 64 65 7b 2d 31 | 2e 30 7d 29 2e 0d 5c 65 |\code{-1|.0})..\e|
|00003890| 6e 64 7b 66 75 6e 63 64 | 65 73 63 7d 0d 0d 5c 62 |nd{funcd|esc}..\b|
|000038a0| 65 67 69 6e 7b 66 75 6e | 63 64 65 73 63 7d 7b 73 |egin{fun|cdesc}{s|
|000038b0| 65 74 61 74 74 72 7d 7b | 6f 62 6a 65 63 74 5c 2c |etattr}{|object\,|
|000038c0| 20 6e 61 6d 65 5c 2c 20 | 76 61 6c 75 65 7d 0d 20 | name\, |value}. |
|000038d0| 20 54 68 69 73 20 69 73 | 20 74 68 65 20 63 6f 75 | This is| the cou|
|000038e0| 6e 74 65 72 70 61 72 74 | 20 6f 66 20 5c 63 6f 64 |nterpart| of \cod|
|000038f0| 65 7b 67 65 74 61 74 74 | 72 7d 2e 20 20 54 68 65 |e{getatt|r}. The|
|00003900| 20 61 72 67 75 6d 65 6e | 74 73 20 61 72 65 20 61 | argumen|ts are a|
|00003910| 6e 0d 20 20 6f 62 6a 65 | 63 74 2c 20 61 20 73 74 |n. obje|ct, a st|
|00003920| 72 69 6e 67 20 61 6e 64 | 20 61 6e 20 61 72 62 69 |ring and| an arbi|
|00003930| 74 72 61 72 79 20 76 61 | 6c 75 65 2e 20 20 54 68 |trary va|lue. Th|
|00003940| 65 20 73 74 72 69 6e 67 | 20 6d 75 73 74 20 62 65 |e string| must be|
|00003950| 20 74 68 65 20 6e 61 6d | 65 0d 20 20 6f 66 20 6f | the nam|e. of o|
|00003960| 6e 65 20 6f 66 20 74 68 | 65 20 6f 62 6a 65 63 74 |ne of th|e object|
|00003970| 27 73 20 61 74 74 72 69 | 62 75 74 65 73 2e 20 20 |'s attri|butes. |
|00003980| 54 68 65 20 66 75 6e 63 | 74 69 6f 6e 20 61 73 73 |The func|tion ass|
|00003990| 69 67 6e 73 20 74 68 65 | 20 76 61 6c 75 65 20 74 |igns the| value t|
|000039a0| 6f 0d 20 20 74 68 65 20 | 61 74 74 72 69 62 75 74 |o. the |attribut|
|000039b0| 65 2c 20 70 72 6f 76 69 | 64 65 64 20 74 68 65 20 |e, provi|ded the |
|000039c0| 6f 62 6a 65 63 74 20 61 | 6c 6c 6f 77 73 20 69 74 |object a|llows it|
|000039d0| 2e 20 20 46 6f 72 20 65 | 78 61 6d 70 6c 65 2c 0d |. For e|xample,.|
|000039e0| 20 20 5c 63 6f 64 65 7b | 73 65 74 61 74 74 72 28 | \code{|setattr(|
|000039f0| 5c 76 61 72 7b 78 7d 2c | 20 27 5c 76 61 72 7b 66 |\var{x},| '\var{f|
|00003a00| 6f 6f 62 61 72 7d 27 2c | 20 31 32 33 29 7d 20 69 |oobar}',| 123)} i|
|00003a10| 73 20 65 71 75 69 76 61 | 6c 65 6e 74 20 74 6f 0d |s equiva|lent to.|
|00003a20| 20 20 5c 63 6f 64 65 7b | 5c 76 61 72 7b 78 7d 2e | \code{|\var{x}.|
|00003a30| 5c 76 61 72 7b 66 6f 6f | 62 61 72 7d 20 3d 20 31 |\var{foo|bar} = 1|
|00003a40| 32 33 7d 2e 0d 5c 65 6e | 64 7b 66 75 6e 63 64 65 |23}..\en|d{funcde|
|00003a50| 73 63 7d 0d 0d 5c 62 65 | 67 69 6e 7b 66 75 6e 63 |sc}..\be|gin{func|
|00003a60| 64 65 73 63 7d 7b 73 74 | 72 7d 7b 6f 62 6a 65 63 |desc}{st|r}{objec|
|00003a70| 74 7d 0d 52 65 74 75 72 | 6e 20 61 20 73 74 72 69 |t}.Retur|n a stri|
|00003a80| 6e 67 20 63 6f 6e 74 61 | 69 6e 69 6e 67 20 61 20 |ng conta|ining a |
|00003a90| 6e 69 63 65 6c 79 20 70 | 72 69 6e 74 61 62 6c 65 |nicely p|rintable|
|00003aa0| 20 72 65 70 72 65 73 65 | 6e 74 61 74 69 6f 6e 20 | represe|ntation |
|00003ab0| 6f 66 20 61 6e 0d 6f 62 | 6a 65 63 74 2e 20 20 46 |of an.ob|ject. F|
|00003ac0| 6f 72 20 73 74 72 69 6e | 67 73 2c 20 74 68 69 73 |or strin|gs, this|
|00003ad0| 20 72 65 74 75 72 6e 73 | 20 74 68 65 20 73 74 72 | returns| the str|
|00003ae0| 69 6e 67 20 69 74 73 65 | 6c 66 2e 20 20 54 68 65 |ing itse|lf. The|
|00003af0| 20 64 69 66 66 65 72 65 | 6e 63 65 0d 77 69 74 68 | differe|nce.with|
|00003b00| 20 5c 63 6f 64 65 7b 72 | 65 70 72 28 5c 76 61 72 | \code{r|epr(\var|
|00003b10| 7b 6f 62 6a 65 63 74 7d | 7d 20 69 73 20 74 68 61 |{object}|} is tha|
|00003b20| 74 20 5c 63 6f 64 65 7b | 73 74 72 28 5c 76 61 72 |t \code{|str(\var|
|00003b30| 7b 6f 62 6a 65 63 74 7d | 7d 20 64 6f 65 73 20 6e |{object}|} does n|
|00003b40| 6f 74 0d 61 6c 77 61 79 | 73 20 61 74 74 65 6d 70 |ot.alway|s attemp|
|00003b50| 74 20 74 6f 20 72 65 74 | 75 72 6e 20 61 20 73 74 |t to ret|urn a st|
|00003b60| 72 69 6e 67 20 74 68 61 | 74 20 69 73 20 61 63 63 |ring tha|t is acc|
|00003b70| 65 70 74 61 62 6c 65 20 | 74 6f 20 5c 63 6f 64 65 |eptable |to \code|
|00003b80| 7b 65 76 61 6c 28 29 7d | 3b 0d 69 74 73 20 67 6f |{eval()}|;.its go|
|00003b90| 61 6c 20 69 73 20 74 6f | 20 72 65 74 75 72 6e 20 |al is to| return |
|00003ba0| 61 20 70 72 69 6e 74 61 | 62 6c 65 20 73 74 72 69 |a printa|ble stri|
|00003bb0| 6e 67 2e 0d 5c 65 6e 64 | 7b 66 75 6e 63 64 65 73 |ng..\end|{funcdes|
|00003bc0| 63 7d 0d 0d 5c 62 65 67 | 69 6e 7b 66 75 6e 63 64 |c}..\beg|in{funcd|
|00003bd0| 65 73 63 7d 7b 74 75 70 | 6c 65 7d 7b 6f 62 6a 65 |esc}{tup|le}{obje|
|00003be0| 63 74 7d 0d 52 65 74 75 | 72 6e 20 61 20 74 75 70 |ct}.Retu|rn a tup|
|00003bf0| 6c 65 20 77 68 6f 73 65 | 20 69 74 65 6d 73 20 61 |le whose| items a|
|00003c00| 72 65 20 74 68 65 20 73 | 61 6d 65 20 61 6e 64 20 |re the s|ame and |
|00003c10| 69 6e 20 74 68 65 20 73 | 61 6d 65 20 6f 72 64 65 |in the s|ame orde|
|00003c20| 72 20 61 73 0d 5c 76 61 | 72 7b 6f 62 6a 65 63 74 |r as.\va|r{object|
|00003c30| 7d 27 73 20 69 74 65 6d | 73 2e 20 20 49 66 20 5c |}'s item|s. If \|
|00003c40| 76 61 72 7b 6f 62 6a 65 | 63 74 7d 20 69 73 20 61 |var{obje|ct} is a|
|00003c50| 6c 72 65 61 64 20 61 20 | 74 75 70 6c 65 2c 20 69 |lread a |tuple, i|
|00003c60| 74 0d 69 73 20 72 65 74 | 75 72 6e 65 64 20 75 6e |t.is ret|urned un|
|00003c70| 63 68 61 6e 67 65 64 2e | 20 20 46 6f 72 20 69 6e |changed.| For in|
|00003c80| 73 74 61 6e 63 65 2c 20 | 5c 63 6f 64 65 7b 74 75 |stance, |\code{tu|
|00003c90| 70 6c 65 28 27 61 62 63 | 27 29 7d 20 72 65 74 75 |ple('abc|')} retu|
|00003ca0| 72 6e 73 0d 72 65 74 75 | 72 6e 73 20 5c 63 6f 64 |rns.retu|rns \cod|
|00003cb0| 65 7b 28 27 61 27 2c 20 | 27 62 27 2c 20 27 63 27 |e{('a', |'b', 'c'|
|00003cc0| 29 7d 20 61 6e 64 20 5c | 63 6f 64 65 7b 74 75 70 |)} and \|code{tup|
|00003cd0| 6c 65 28 5b 31 2c 20 32 | 2c 20 33 5d 29 7d 20 72 |le([1, 2|, 3])} r|
|00003ce0| 65 74 75 72 6e 73 0d 5c | 63 6f 64 65 7b 28 31 2c |eturns.\|code{(1,|
|00003cf0| 20 32 2c 20 33 29 7d 2e | 0d 5c 65 6e 64 7b 66 75 | 2, 3)}.|.\end{fu|
|00003d00| 6e 63 64 65 73 63 7d 0d | 0d 5c 62 65 67 69 6e 7b |ncdesc}.|.\begin{|
|00003d10| 66 75 6e 63 64 65 73 63 | 7d 7b 74 79 70 65 7d 7b |funcdesc|}{type}{|
|00003d20| 6f 62 6a 65 63 74 7d 0d | 25 20 58 58 58 4a 48 20 |object}.|% XXXJH |
|00003d30| 78 72 65 66 20 74 6f 20 | 62 75 69 6c 2d 69 6e 20 |xref to |buil-in |
|00003d40| 6f 62 6a 65 63 74 73 20 | 68 65 72 65 3f 0d 20 20 |objects |here?. |
|00003d50| 52 65 74 75 72 6e 20 74 | 68 65 20 74 79 70 65 20 |Return t|he type |
|00003d60| 6f 66 20 61 6e 20 5c 76 | 61 72 7b 6f 62 6a 65 63 |of an \v|ar{objec|
|00003d70| 74 7d 2e 20 20 54 68 65 | 20 72 65 74 75 72 6e 20 |t}. The| return |
|00003d80| 76 61 6c 75 65 20 69 73 | 20 61 20 74 79 70 65 0d |value is| a type.|
|00003d90| 20 20 6f 62 6a 65 63 74 | 2e 20 20 54 68 65 72 65 | object|. There|
|00003da0| 20 69 73 20 6e 6f 74 20 | 6d 75 63 68 20 79 6f 75 | is not |much you|
|00003db0| 20 63 61 6e 20 64 6f 20 | 77 69 74 68 20 74 79 70 | can do |with typ|
|00003dc0| 65 20 6f 62 6a 65 63 74 | 73 20 65 78 63 65 70 74 |e object|s except|
|00003dd0| 20 63 6f 6d 70 61 72 65 | 0d 20 20 74 68 65 6d 20 | compare|. them |
|00003de0| 74 6f 20 6f 74 68 65 72 | 20 74 79 70 65 20 6f 62 |to other| type ob|
|00003df0| 6a 65 63 74 73 3b 20 65 | 2e 67 2e 2c 20 74 68 65 |jects; e|.g., the|
|00003e00| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 63 68 65 63 6b | followi|ng check|
|00003e10| 73 20 69 66 20 61 20 76 | 61 72 69 61 62 6c 65 0d |s if a v|ariable.|
|00003e20| 20 20 69 73 20 61 20 73 | 74 72 69 6e 67 3a 0d 0d | is a s|tring:..|
|00003e30| 5c 62 63 6f 64 65 5c 62 | 65 67 69 6e 7b 76 65 72 |\bcode\b|egin{ver|
|00003e40| 62 61 74 69 6d 7d 0d 3e | 3e 3e 20 69 66 20 74 79 |batim}.>|>> if ty|
|00003e50| 70 65 28 78 29 20 3d 3d | 20 74 79 70 65 28 27 27 |pe(x) ==| type(''|
|00003e60| 29 3a 20 70 72 69 6e 74 | 20 27 49 74 20 69 73 20 |): print| 'It is |
|00003e70| 61 20 73 74 72 69 6e 67 | 27 0d 5c 65 6e 64 7b 76 |a string|'.\end{v|
|00003e80| 65 72 62 61 74 69 6d 7d | 5c 65 63 6f 64 65 0d 5c |erbatim}|\ecode.\|
|00003e90| 65 6e 64 7b 66 75 6e 63 | 64 65 73 63 7d 0d 0d 5c |end{func|desc}..\|
|00003ea0| 62 65 67 69 6e 7b 66 75 | 6e 63 64 65 73 63 7d 7b |begin{fu|ncdesc}{|
|00003eb0| 76 61 72 73 7d 7b 7d 0d | 57 69 74 68 6f 75 74 20 |vars}{}.|Without |
|00003ec0| 61 72 67 75 6d 65 6e 74 | 73 2c 20 72 65 74 75 72 |argument|s, retur|
|00003ed0| 6e 20 61 20 64 69 63 74 | 69 6f 6e 61 72 79 20 63 |n a dict|ionary c|
|00003ee0| 6f 72 72 65 73 70 6f 6e | 64 69 6e 67 20 74 6f 20 |orrespon|ding to |
|00003ef0| 74 68 65 20 63 75 72 72 | 65 6e 74 0d 6c 6f 63 61 |the curr|ent.loca|
|00003f00| 6c 20 73 79 6d 62 6f 6c | 20 74 61 62 6c 65 2e 20 |l symbol| table. |
|00003f10| 20 57 69 74 68 20 61 20 | 6d 6f 64 75 6c 65 2c 20 | With a |module, |
|00003f20| 63 6c 61 73 73 20 6f 72 | 20 63 6c 61 73 73 20 69 |class or| class i|
|00003f30| 6e 73 74 61 6e 63 65 20 | 6f 62 6a 65 63 74 20 61 |nstance |object a|
|00003f40| 73 0d 61 72 67 75 6d 65 | 6e 74 20 28 6f 72 20 61 |s.argume|nt (or a|
|00003f50| 6e 79 74 68 69 6e 67 20 | 65 6c 73 65 20 74 68 61 |nything |else tha|
|00003f60| 74 20 68 61 73 20 61 20 | 5c 63 6f 64 65 7b 5f 5f |t has a |\code{__|
|00003f70| 64 69 63 74 5f 5f 7d 20 | 61 74 74 72 69 62 75 74 |dict__} |attribut|
|00003f80| 65 29 2c 0d 72 65 74 75 | 72 6e 73 20 61 20 64 69 |e),.retu|rns a di|
|00003f90| 63 74 69 6f 6e 61 72 79 | 20 63 6f 72 72 65 73 70 |ctionary| corresp|
|00003fa0| 6f 6e 64 69 6e 67 20 74 | 6f 20 74 68 65 20 6f 62 |onding t|o the ob|
|00003fb0| 6a 65 63 74 27 73 20 73 | 79 6d 62 6f 6c 20 74 61 |ject's s|ymbol ta|
|00003fc0| 62 6c 65 2e 0d 54 68 65 | 20 72 65 74 75 72 6e 65 |ble..The| returne|
|00003fd0| 64 20 64 69 63 74 69 6f | 6e 61 72 79 20 73 68 6f |d dictio|nary sho|
|00003fe0| 75 6c 64 20 6e 6f 74 20 | 62 65 20 6d 6f 64 69 66 |uld not |be modif|
|00003ff0| 69 65 64 3a 20 74 68 65 | 20 65 66 66 65 63 74 73 |ied: the| effects|
|00004000| 20 6f 6e 20 74 68 65 0d | 63 6f 72 72 65 73 70 6f | on the.|correspo|
|00004010| 6e 64 69 6e 67 20 73 79 | 6d 62 6f 6c 20 74 61 62 |nding sy|mbol tab|
|00004020| 6c 65 20 61 72 65 20 75 | 6e 64 65 66 69 6e 65 64 |le are u|ndefined|
|00004030| 2e 25 0d 5c 66 6f 6f 74 | 6e 6f 74 65 7b 49 6e 20 |.%.\foot|note{In |
|00004040| 74 68 65 20 63 75 72 72 | 65 6e 74 20 69 6d 70 6c |the curr|ent impl|
|00004050| 65 6d 65 6e 74 61 74 69 | 6f 6e 2c 20 6c 6f 63 61 |ementati|on, loca|
|00004060| 6c 20 76 61 72 69 61 62 | 6c 65 20 62 69 6e 64 69 |l variab|le bindi|
|00004070| 6e 67 73 0d 63 61 6e 6e | 6f 74 20 6e 6f 72 6d 61 |ngs.cann|ot norma|
|00004080| 6c 6c 79 20 62 65 20 61 | 66 66 65 63 74 65 64 20 |lly be a|ffected |
|00004090| 74 68 69 73 20 77 61 79 | 2c 20 62 75 74 20 76 61 |this way|, but va|
|000040a0| 72 69 61 62 6c 65 73 20 | 72 65 74 72 69 65 76 65 |riables |retrieve|
|000040b0| 64 20 66 72 6f 6d 0d 6f | 74 68 65 72 20 73 63 6f |d from.o|ther sco|
|000040c0| 70 65 73 20 63 61 6e 20 | 62 65 2e 20 20 54 68 69 |pes can |be. Thi|
|000040d0| 73 20 6d 61 79 20 63 68 | 61 6e 67 65 2e 7d 0d 5c |s may ch|ange.}.\|
|000040e0| 65 6e 64 7b 66 75 6e 63 | 64 65 73 63 7d 0d 0d 5c |end{func|desc}..\|
|000040f0| 62 65 67 69 6e 7b 66 75 | 6e 63 64 65 73 63 7d 7b |begin{fu|ncdesc}{|
|00004100| 78 72 61 6e 67 65 7d 7b | 5c 6f 70 74 69 6f 6e 61 |xrange}{|\optiona|
|00004110| 6c 7b 73 74 61 72 74 5c | 2c 7d 20 65 6e 64 5c 6f |l{start\|,} end\o|
|00004120| 70 74 69 6f 6e 61 6c 7b | 5c 2c 20 73 74 65 70 7d |ptional{|\, step}|
|00004130| 7d 0d 54 68 69 73 20 66 | 75 6e 63 74 69 6f 6e 20 |}.This f|unction |
|00004140| 69 73 20 76 65 72 79 20 | 73 69 6d 69 6c 61 72 20 |is very |similar |
|00004150| 74 6f 20 5c 63 6f 64 65 | 7b 72 61 6e 67 65 28 29 |to \code|{range()|
|00004160| 7d 2c 20 62 75 74 20 72 | 65 74 75 72 6e 73 20 61 |}, but r|eturns a|
|00004170| 6e 0d 60 60 78 72 61 6e | 67 65 20 6f 62 6a 65 63 |n.``xran|ge objec|
|00004180| 74 27 27 20 69 6e 73 74 | 65 61 64 20 6f 66 20 61 |t'' inst|ead of a|
|00004190| 20 6c 69 73 74 2e 20 20 | 54 68 69 73 20 69 73 20 | list. |This is |
|000041a0| 61 6e 20 6f 70 61 71 75 | 65 20 73 65 71 75 65 6e |an opaqu|e sequen|
|000041b0| 63 65 20 74 79 70 65 0d | 77 68 69 63 68 20 79 69 |ce type.|which yi|
|000041c0| 65 6c 64 73 20 74 68 65 | 20 73 61 6d 65 20 76 61 |elds the| same va|
|000041d0| 6c 75 65 73 20 61 73 20 | 74 68 65 20 63 6f 72 72 |lues as |the corr|
|000041e0| 65 73 70 6f 6e 64 69 6e | 67 20 6c 69 73 74 2c 20 |espondin|g list, |
|000041f0| 77 69 74 68 6f 75 74 0d | 61 63 74 75 61 6c 6c 79 |without.|actually|
|00004200| 20 73 74 6f 72 69 6e 67 | 20 74 68 65 6d 20 61 6c | storing| them al|
|00004210| 6c 20 73 69 6d 75 6c 74 | 61 6e 65 6f 75 73 6c 79 |l simult|aneously|
|00004220| 2e 20 20 54 68 65 20 61 | 64 76 61 6e 74 61 67 65 |. The a|dvantage|
|00004230| 20 6f 66 0d 5c 63 6f 64 | 65 7b 78 72 61 6e 67 65 | of.\cod|e{xrange|
|00004240| 28 29 7d 20 6f 76 65 72 | 20 5c 63 6f 64 65 7b 72 |()} over| \code{r|
|00004250| 61 6e 67 65 28 29 7d 20 | 69 73 20 6d 69 6e 69 6d |ange()} |is minim|
|00004260| 61 6c 20 28 73 69 6e 63 | 65 20 5c 63 6f 64 65 7b |al (sinc|e \code{|
|00004270| 78 72 61 6e 67 65 28 29 | 7d 0d 73 74 69 6c 6c 20 |xrange()|}.still |
|00004280| 68 61 73 20 74 6f 20 63 | 72 65 61 74 65 20 74 68 |has to c|reate th|
|00004290| 65 20 76 61 6c 75 65 73 | 20 77 68 65 6e 20 61 73 |e values| when as|
|000042a0| 6b 65 64 20 66 6f 72 20 | 74 68 65 6d 29 20 65 78 |ked for |them) ex|
|000042b0| 63 65 70 74 20 77 68 65 | 6e 20 61 20 76 65 72 79 |cept whe|n a very|
|000042c0| 0d 6c 61 72 67 65 20 72 | 61 6e 67 65 20 69 73 20 |.large r|ange is |
|000042d0| 75 73 65 64 20 6f 6e 20 | 61 20 6d 65 6d 6f 72 79 |used on |a memory|
|000042e0| 2d 73 74 61 72 76 65 64 | 20 6d 61 63 68 69 6e 65 |-starved| machine|
|000042f0| 20 28 65 2e 67 2e 20 44 | 4f 53 29 20 6f 72 20 77 | (e.g. D|OS) or w|
|00004300| 68 65 6e 20 61 6c 6c 0d | 6f 66 20 74 68 65 20 72 |hen all.|of the r|
|00004310| 61 6e 67 65 27 73 20 65 | 6c 65 6d 65 6e 74 73 20 |ange's e|lements |
|00004320| 61 72 65 20 6e 65 76 65 | 72 20 75 73 65 64 20 28 |are neve|r used (|
|00004330| 65 2e 67 2e 20 77 68 65 | 6e 20 74 68 65 20 6c 6f |e.g. whe|n the lo|
|00004340| 6f 70 20 69 73 20 75 73 | 75 61 6c 6c 79 0d 74 65 |op is us|ually.te|
|00004350| 72 6d 69 6e 61 74 65 64 | 20 77 69 74 68 20 5c 63 |rminated| with \c|
|00004360| 6f 64 65 7b 62 72 65 61 | 6b 7d 29 2e 0d 5c 65 6e |ode{brea|k})..\en|
|00004370| 64 7b 66 75 6e 63 64 65 | 73 63 7d 0d |d{funcde|sc}. |
+--------+-------------------------+-------------------------+--------+--------+