KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21573/task/21573/root/usr/lib/python2.4/test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21573/task/21573/root/usr/lib/python2.4/test/test_itertools.pyc
mò
‚=5Dc@sådkZdklZdkTdklZdkZdkZdkZd„Z	d„Z
d„Zd„Zd„Z
d	fd
„ƒYZd„Zdeifd
„ƒYZdeifd„ƒYZd„Zdfd„ƒYZdfd„ƒYZdfd„ƒYZdfd„ƒYZdfd„ƒYZdfd„ƒYZdfd„ƒYZd„Zd eifd!„ƒYZd"eifd#„ƒYZd$eifd%„ƒYZd&Zhd'e<Z e!d(„Z"e#d)joe"d*e$ƒndS(+N(stest_support(t*(sproxycCsd|S(sTest function of one argumentiN(tx(R((t)/usr/lib/python2.4/test/test_itertools.pytonearg	scGs
t‚dS(s"Test function that raises an errorN(t
ValueError(targs((Rterrfunc
sccsxdD]
}|VqWdS(sNon-restartable source sequenceiiiN(iii(ti(R((Rtgen3scCs|ddjS(sTest predicateiiN(R(R((RtisEvenscCs|ddjS(sTest predicateiiN(R(R((RtisOddstStopNowcBs tZdZd„Zd„ZRS(s"Class emulating an empty iterable.cCs|S(N(tself(R((Rt__iter__ scCs
t‚dS(N(t
StopIteration(R((Rtnext"s(t__name__t
__module__t__doc__R
R(((RRs	cCstt||ƒƒS(sHConvenience function for partially consuming a long of infinite iterableN(tlisttislicetseqtn(RR((Rttake%stTestBasicOpscBstZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
d
„Zd„Zd„Z
d
„Zd„Zd„ZRS(NcCs¥|ittddƒƒtdƒƒ|ittdƒƒtdƒƒ|ittdƒƒgƒ|itdtddƒƒtdƒƒ|ittddƒdS(	Ntabctdeftabcdeftitabcdii(RtassertEqualRtchainRtassertRaisest	TypeError(R((Rt
test_chain*s
%"(cCs/|itdtƒƒd
ddgƒ|itdtdƒƒdddgƒ|itdtdtdƒƒƒddgƒ|ittddƒ|ittdƒttidƒ}|i
ƒ|i
ƒ|i
ƒ|i
ƒ|i
ƒtdƒ}|it|ƒdƒ|i
ƒ|it|ƒdƒdS(NRtaitbitciiiiscount(3)scount(4)(R#i(R$i(R%i(R#i(R$i(R%i(R#i(R$i(RRtziptcountRR R!tsystmaxintR%Rtrepr(RR%((Rt
test_count1s%(.2
cCs®|itdtdƒƒtdƒƒ|ittdƒƒgƒ|ittƒ|ittdƒ|ittttƒƒdƒƒddddddddddg
ƒdS(	Ni
Rt
abcabcabcaRiiii(	RRRtcycleRR R!RR(R((Rt
test_cycle>s
%c
sî|igttgƒƒƒ|igttgdtƒƒƒ|itttdgƒƒ|ittdƒ|ittdd„dƒd(d)d*d+d,d-d.d/g}g}xRt|d„ƒD]>\}}
x/|
D]'}|i||dƒ|i
|ƒqÓWqÀW|i||ƒg}x‰t|d„ƒD]u\}}
xft|
d„ƒD]R\}}xC|D];}|i||dƒ|i||dƒ|i
|ƒq]WqJWq+W|i||ƒg}
t|d„ƒD]\}}
|
|qË~
}	tg}
|D]}|
|dqõ~
ƒ}|it|	ƒ|ƒ|it|	ƒt|ƒƒd}g}
tt|ƒƒD]\}}
|
|qa~
}|i|dddddgƒg}
tt|ƒƒD]0\}}
tt|
d
dƒƒo|
|q³q³~
}|i|dddgƒg}
tt|ƒƒD]%\}}
|
tt|
ƒƒ|fq~
}|i|d0d1d2d3d4gƒtg}
tt|ƒƒD]%\}}
|
tt|
ƒƒ|fqƒ~
dtƒd }|i|d5d6d7gƒd tfd!„ƒY‰d‡d"†}dtd#„}|iˆ||dƒƒ|iˆ||d
ƒƒd$f‡d%†ƒY}|ƒ|ƒdg}|iˆ||d&tƒ|iˆ||ƒ‡‡d'†‰dˆ_|iˆ|dgˆƒd
ˆ_|iˆ|ddgˆƒdS(8NtkeyRcCs|S(N(R(R((Rt<lambda>Ksi
iiiiiii
iiiiiiiicCs|dS(Ni(tr(R1((RR0QscCs|dS(Ni(R1(R1((RR0YscCs|dS(Ni(R1(R1((RR0ZscCs|dS(Ni(R1(R1((RR0bstabracadabraR#R$R%tdR1itreverset
ExpectedErrorcBstZRS(N(RR(((RR5wsc#s%xt|ƒD]
}dVq
Wˆ‚dS(Ntyo(trangeRRR5(RR(R5(Rt
delayed_raiseys
cCs4g}t||ƒD]\}}|||ƒq~S(N(t_[1]tgroupbytiterabletkeyptktgtfunc(R;R<R?R>R=R9((Rtgulp}stDummyCmpcstZ‡d†ZRS(Ncs
ˆ‚dS(N(R5(Rtdst(R5(Rt__cmp__‡s(RRRC((R5(RRA†sR?cs1ˆidjoˆid8_|Snˆ‚dS(Nii(tkeyfunctskiptobjR5(RF(RDR5(RRD‘s(ii
i(iii(iii(ii
i(iii(iii(iii(iii(iR#(iR$(iR%(iR3(iR1(iR#(iR1(iR$( RRRR:tidR R!tNonetstdupR=R>telemtappendtiktigR9tkeystsetR1texpectedkeystlentsortedRtTruet	ExceptionR5R8R@RARDRE(RR8RMRDRNR@R5RQRJROR>R=RKR9RIR1RA((RDR5Rttest_groupbyEsh"3+3PEU		c	Cs|ittttdƒƒƒdddgƒ|ittddddddgƒƒddgƒ|itdtttƒƒƒddddgƒ|i	t
tƒ|i	t
td„ƒ|i	t
td„tdƒdƒ|i	t
ttd	ƒ|i	t
ttdƒtdƒƒiƒdS(
NiiiiicCs|S(N(R(R((RR0£scCs|S(N(R(R((RR0¤sii(RRRtifilterR	R7RHRR'R R!R(R((Rttest_ifilteržs.41"c	Cs |ittttdƒƒƒdddgƒ|ittddddddgƒƒdddgƒ|itdtttƒƒƒddddgƒ|i	t
tƒ|i	t
td	„ƒ|i	t
td
„tdƒdƒ|i	t
ttdƒ|i	t
ttdƒtdƒƒiƒdS(NiiiiiiiicCs|S(N(R(R((RR0­scCs|S(N(R(R((RR0®s(RRRtifilterfalseR	R7RHRR'R R!R(R((Rttest_ifilterfalse¨s.71"cCs\g}tdtƒƒD]\}}|||fq~}|i|dd
dgƒ|ittdt	dƒƒƒt
dt	dƒƒƒ|ittd	t	d
ƒƒƒt
d	t	d
ƒƒƒ|itd
td	tƒƒƒt
d	t	d
ƒƒƒ|ittd	ƒƒt
d	ƒƒ|ittƒƒt
ƒƒ|it
td
ƒ|it
tt	d
ƒd
ƒ|ig}tddƒD]}|tt|ƒƒqu~t
ddƒƒ|ig}tddƒD]
}||q¾~t
ddƒƒtttddƒƒ}|it|ƒt|ƒƒttttddƒƒƒ}|itti|ƒƒt|ƒƒdS(NRR#iR$iR%iiRiR(R#i(R$i(R%i(R9tizipR'RtytansRRRR7R&RR R!tpairttupletmapRGtidstmintmaxRRtdicttfromkeys(RRaR9R^R]R\R((Rt	test_izip²s"9444"9-cCsn|ittdƒtdƒƒd
ddgƒ|ittddƒƒdddgƒ|itdtdƒƒdddgƒ|ittddƒƒgƒ|ittddƒƒgƒ|ittƒ|ittdddƒ|ittddƒtddƒ}|it|ƒd	ƒtddd
ƒ}|it|ƒdƒt|ƒ|it|ƒdƒdS(NiR#iiiiýÿÿÿix0.00.0srepeat((1+0j))isrepeat((1+0j), 5)srepeat((1+0j), 0)(iR#(iR#(iR#(RRR&txrangetrepeatRRR R!RHR1R*(RR1((Rttest_repeatÆs((
cCsŽ|itttitdƒtddƒƒƒddddddgƒ|ittddtdƒƒƒd
ddgƒ|ittddtƒƒƒdddgƒ|it	dtddtƒƒƒddgƒ|itttigƒƒgƒ|i
ttƒ|i
tttiƒ|i
ttdtdƒƒi
ƒ|i
tttdgdgƒi
ƒ|i
tttdgdgƒi
ƒdS(NiiiiiRiR#R$R%i
i(R#i(R$i(R%i(R#i(R$i(R%i(R#i(R$i(RRRtimaptoperatortpowR7RHR'RR R!tnegRRRR(R((Rt	test_imap×s-!!
""%c	Csu|itttittdƒtddƒƒƒƒddddddgƒ|itdttit	t
ƒt
dƒƒƒƒddddddgƒ|itttigƒƒgƒ|ittttiddggƒƒ|ittƒ|itttid
gdƒ|ittd	dgƒi
ƒ|itttdgƒi
ƒ|itttd
gƒi
ƒdS(Niiiiiiitextrai
(ii(ii(ii(ii(RRRtstarmapRkRlR&R7RR[R'R R!RRRR(R((Rttest_starmapçs30"(cCsÔxHd
ddddgD]1}|itttdƒ|Œƒt|ŒƒqWxZddfddfddfgD]7\}}|itttdƒ|Œƒt|ŒƒqmW|itttdƒdƒƒtdƒƒ|itttdƒddƒƒtddƒƒ|itttdƒdddƒƒtdddƒƒ|i	t
ttdƒƒ|i	t
ttdƒddddƒ|i	tttdƒd	ddƒ|i	tttdƒdd	d
ƒ|i	tttdƒddd
ƒ|i	tttdƒdddƒ|i	tttdƒdƒ|i	tttdƒddƒ|i	tttdƒddƒ|i	tttdƒdddƒ|i	tttdƒdddƒ|itttt
ƒddtiƒƒƒdƒdS(Ni
iiidiniiiiûÿÿÿiÿÿÿÿiR#(i
ii(i
ii(i
i(i
i(i(i
ini(i
idi(i
in(i
id(in(id(RRRRRRgR7ttgtargsRHR R!RRRR'R(R)(RRRr((Rttest_isliceôs*/"/+17%""""""cCsHddddddddg}d	„}|itt||ƒƒdddgƒ|itt|gƒƒgƒ|ittƒ|ittti	ƒ|ittti	d
gd
ƒ|ittddgƒi
ƒ|itttdgƒi
ƒtt
ddddddgƒ}|it|ƒdddgƒ|it|i
ƒdS(NiiiiiiiicCs
|djS(Ni
(R(R((RR0sRoi
i(ii(ii(ii(tdatatundertenRRRt	takewhileR R!RkRlRRRtboolttR(RRuRxRt((Rttest_takewhiles	(!cCsûddddddddg}d	„}|itt||ƒƒdddddgƒ|itt|gƒƒgƒ|ittƒ|ittti	ƒ|ittti	dgd
ƒ|ittdd
gƒi
ƒ|itttdgƒi
ƒdS(NiiiiiiiicCs
|djS(Ni
(R(R((RR0(sRoi
(ii(ii(ii(
RtRuRRRt	dropwhileR R!RkRlRRR(RRuRt((Rttest_dropwhile&s	.cCs“d}d„}tgƒ\}}	|it|ƒgƒ|it|	ƒgƒt||ƒƒ\}}	|it||	ƒtt	|ƒt	|ƒƒƒt||ƒƒ\}}	|it|ƒt	|ƒƒ|it|	ƒt	|ƒƒt||ƒƒ\}}	x*t
dƒD]}|i|iƒ|ƒqW~|it|	ƒt	|ƒƒt||ƒƒ\}}	x*t
dƒD]}|i|iƒ|ƒqlW~	|it|ƒt	d|ƒƒx½t
dƒD]¯}
dg|dg|}ti|ƒggf}t||ƒƒ}x/|D]'}||iƒ}||i|ƒqW|i|dt	|ƒƒ|i|dt	|ƒƒq»W|ittƒ|ittdƒ|ittddgd	ƒ|ittddgdd	ƒtd
ƒ\}}	t|ƒdƒ}|it|ƒtdƒƒtt
dƒdƒ\}}	}x*t
dƒD]}|i|iƒ|ƒq7W|it|	ƒt	dƒƒ|i|iƒ|iƒgt	dƒƒ|it|ƒt	ddƒƒ|it|ƒt	ddƒƒ|ittd
d
ƒxut
dƒD]g}td
|ƒ}|it|ƒtƒ|it|ƒ|ƒ|itt|ƒtd
ƒg|ƒqüWtd
ƒ\}}	t|ƒ\}}
|i||jƒtd
ƒ\}}t|ƒ}|it|ƒ|it|dƒ||ƒ}|it|ƒt|ƒjo"t|ƒjotd
ƒjnƒtt
dƒƒ\}}	t#|ƒ}|it%|dƒt|	ƒƒ~|it&t%|dƒdS(NiÈccsxt|ƒD]
}|Vq
WdS(N(RgRR(RR((Rtirange3s
idiiiiiRRRiÐtinvalidi
t	__class__('RR|tteeR#R$RRRR&R7RgRRtjtordertrandomtshuffletliststitstvalueRLR R!ttypeR%tresultR_RRR`R3tassert_tt1tt2ttnewtt3tproxytptgetattrtReferenceError(RRˆRŠR…R‹R„R|R#R%R$R3RRŒR€RR†RRR((Rttest_tee1sŒ	.




(
*HcCsš|ittƒiƒxOttttfD];}|it|gƒiƒ|it|t	ƒƒiƒq)W|itt
gdƒiƒ|itt
t	ƒdƒiƒtgƒ\}}|it|iƒ|it|iƒtt	ƒƒ\}}|it|iƒ|it|iƒ|ittddƒiƒxattttttfD]G}|it|d„gƒiƒ|it|d„t	ƒƒiƒqKWdS(NicCs|S(N(R(R((RR0scCs|S(N(R(R((RR0žs(RR RR[RRR-R:tfRRRHRRtqRhRWRYRjRvRzRp(RR”R“R((Rttest_StopIteration‰s$ (RRR"R+R.RVRXRZRfRiRnRqRsRyR{R’R•(((RR)s		
		Y	
	
				
	$			XtTestGCcBs}tZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
d
„Zd„Zd„Z
d
„ZRS(NcCs!|i|ƒ|iƒ~~dS(N(t	containerRLtiteratorR(RR˜R—((Rt	makecycle¢s

cCs g}|it|ƒ|ƒdS(N(R#RR™R(RR#((RR"§scCs'g}|it|gdƒ|ƒdS(Ni(R#RR™R-(RR#((RR.«scCs,g}|ittd||gƒ|ƒdS(Ni(R#RR™RzRw(RR#((RR{¯scCs-g}|it|gdd„ƒ|ƒdS(NicCs|S(N(R(R((RR0µs(R#RR™R:(RR#((RRV³scCs-g}|itd„|gdƒ|ƒdS(NcCstS(N(RT(R((RR0¹si(R#RR™RW(RR#((RRX·scCs&g}|itd„|ƒ|ƒdS(NcCstS(N(tFalse(R((RR0½s(R#RR™RY(RR#((RRZ»scCs1g}|it|gd|gdƒ|ƒdS(Nii(R#RR™R[(RR#((RRf¿scCs-g}|itd„|gdƒ|ƒdS(NcCs|S(N(R(R((RR0Åsi(R#RR™Rj(RR#((RRnÃscCs*g}|it|gddƒ|ƒdS(Ni(R#RR™RRH(RR#((RRsÇscCs g}|it|ƒ|ƒdS(N(R#RR™Rh(RR#((RRiËscCs3g}|itd„||fgdƒ|ƒdS(NcGs|S(N(Rx(Rx((RR0Ñsi(R#RR™Rp(RR#((RRqÏscCs/g}|ittdd||gƒ|ƒdS(Nii(R#RR™RvRw(RR#((RRyÓs(RRR™R"R.R{RVRXRZRfRnRsRiRqRy(((RR– s												ccsx|D]
}|VqWdS(sRegular generatorN(tseqnR(R›R((RtR×stGcBs tZdZd„Zd„ZRS(sSequence using __getitem__cCs
||_dS(N(R›R(RR›((Rt__init__ÞscCs|i|S(N(RR›R(RR((Rt__getitem__às(RRRRžRŸ(((RRÜs	tIcBs)tZdZd„Zd„Zd„ZRS(s Sequence using iterator protocolcCs||_d|_dS(Ni(R›RR(RR›((RRžås	cCs|S(N(R(R((RR
èscCsF|it|iƒjo
t‚n|i|i}|id7_|S(Ni(RRRRR›Rtv(RR¡((RRês

(RRRRžR
R(((RR ãs		tIgcBs tZdZd„Zd„ZRS(s9Sequence using iterator protocol defined with a generatorcCs||_d|_dS(Ni(R›RR(RR›((RRžòs	ccsx|iD]
}|Vq
WdS(N(RR›tval(RR£((RR
õs
(RRRRžR
(((RR¢ðs	tXcBs tZdZd„Zd„ZRS(s Missing __getitem__ and __iter__cCs||_d|_dS(Ni(R›RR(RR›((RRžûs	cCsF|it|iƒjo
t‚n|i|i}|id7_|S(Ni(RRRRR›RR¡(RR¡((RRþs

(RRRRžR(((RR¤ùs	tNcBs tZdZd„Zd„ZRS(sIterator missing next()cCs||_d|_dS(Ni(R›RR(RR›((RRžs	cCs|S(N(R(R((RR
	s(RRRRžR
(((RR¥s	tEcBs)tZdZd„Zd„Zd„ZRS(sTest propagation of exceptionscCs||_d|_dS(Ni(R›RR(RR›((RRžs	cCs|S(N(R(R((RR
scCsdddS(Nii((R((RRs(RRRRžR
R(((RR¦s		tScBs)tZdZd„Zd„Zd„ZRS(sTest immediate stopcCsdS(N((RR›((RRžscCs|S(N(R(R((RR
scCs
t‚dS(N(R(R((RRs(RRRRžR
R(((RR§s		cCs(ttd„ttt|ƒƒƒƒƒS(s Test multiple tiers of iteratorscCs|S(N(R(R((RR0!sN(RRjRœR¢RR›(R›((RtLstTestVariousIteratorArgscBsttZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
d
„Zd„Zd„Z
RS(
NcCs%xddtdƒd	tdddƒfD]õ}x•ttttttfD]{}|itt
||ƒƒƒt||ƒƒƒ|itt
||ƒ||ƒƒƒt||ƒƒt||ƒƒƒqGW|itt
t|ƒƒ|ittt
t|ƒƒƒ|ittt
t|ƒƒƒq(WdS(
Nt123Riètdof1.2iÐi˜i(R«f1.2(R7RgRIRR R¢R§R¨RœR>RRRRR R!R¤R¥tZeroDivisionErrorR¦(RR>RI((RR"&s(.KcCsxddtdƒd
tdddƒfD]×}xwttttttfD]]}t
|ƒd	}t||ƒƒd	}ttt||ƒƒ|ƒƒ}|i||ƒqGW|ittt|ƒƒ|itttt|ƒƒƒ|itttt|ƒƒƒq(WdS(NRªRièR«f1.2iÐi˜ii(sdof1.2(R7RgRIRR R¢R§R¨RœR>RRttgtlenRtexpectedRR-tactualRRR R!R¤R¥R¬R¦(RR­R®R¯R>RI((RR./s(!cCsxþtdƒtdƒtdƒd	tdddƒfD]É}xittttttfD]O}|ig}t
||ƒƒD]\}}||qv~t||ƒƒƒqSW|itt
t|ƒƒ|ittt
t|ƒƒƒ|ittt
t|ƒƒƒq4WdS(
Ni
iièiiiÐi˜i(ii(R7RgRIRR R¢R§R¨RœR>RRR9R:R=tsbRR R!R¤R¥R¬R¦(RR>RIR9R°R=((RRV:s4McCsùxòtdƒtdƒtdƒd	tdddƒfD]½}xTttttttfD]:}|itt
t||ƒƒƒtt||ƒƒƒqSW|itt
tt|ƒƒ|ittt
tt|ƒƒƒ|ittt
tt|ƒƒƒq4WdS(
Ni
iièiiiÐi˜i(ii(R7RgRIRR R¢R§R¨RœR>RRRRWR	tfilterR R!R¤R¥R¬R¦(RR>RI((RRXBs48"cCsùxòtdƒtdƒtdƒd	tdddƒfD]½}xTttttttfD]:}|itt
t||ƒƒƒtt||ƒƒƒqSW|itt
tt|ƒƒ|ittt
tt|ƒƒƒ|ittt
tt|ƒƒƒq4WdS(
Ni
iièiiiÐi˜i(ii(R7RgRIRR R¢R§R¨RœR>RRRRYR	R±R
R R!R¤R¥R¬R¦(RR>RI((RRZJs48"cCsxddtdƒd	tdddƒfD]î}xŽttttttfD]t}|itt
||ƒƒƒt||ƒƒƒ|itt
||ƒ||ƒƒƒt||ƒ||ƒƒƒqGW|itt
t|ƒƒ|ittt
t|ƒƒƒ|ittt
t|ƒƒƒq(WdS(
NRªRièR«f1.2iÐi˜i(sdof1.2(R7RgRIRR R¢R§R¨RœR>RRRR[R&R R!R¤R¥R¬R¦(RR>RI((RRfRs(.Dc	CsEx>tdƒtdƒtdƒd	tdddƒfD]	}x ttttttfD]†}|itt
t||ƒƒƒtt||ƒƒƒ|itt
ti||ƒ||ƒƒƒtti||ƒ||ƒƒƒqSW|itt
tt|ƒƒ|ittt
tt|ƒƒƒ|ittt
tt|ƒƒƒq4WdS(
Ni
iidiiii2i(ii(R7RgRIRR R¢R§R¨RœR>RRRRjRR`RkRlR R!R¤R¥R¬R¦(RR>RI((RRn[s44P"c	CsýxöddtdƒdtdddƒfD]Í}xdttttttfD]J}|itt
||ƒd	dd
ƒƒt||ƒƒd	dd
…ƒqGW|itt
t|ƒdƒ|ittt
t|ƒdƒƒ|ittt
t|ƒdƒƒq(WdS(
Nt12345RièR«f1.2iÐi˜iiii
(sdof1.2(R7RgRIRR R¢R§R¨RœR>RRRRRHR R!R¤R¥R¬R¦(RR>RI((RRsds(H"c	Cs xtdƒtdƒtdƒd	tdddƒfD]ä}xrttttttfD]X}t
||ƒ}|i
ttti||ƒƒƒtti||ƒ||ƒƒƒqSW|itttit|ƒƒ|ittttit|ƒƒƒ|ittttit|ƒƒƒq4WdS(
Ni
iidiiii2i(ii(R7RgRIRR R¢R§R¨RœR>R&tssRRRRpRkRlR`R R!R¤R¥R¬R¦(RR>R³RI((RRqls4G%cCs&xtdƒtdƒtdƒd	tdddƒfD]ê}xttttttfD]g}g}x3||ƒD]%}t|ƒpPn|i
|ƒqlW|ittt||ƒƒƒ|ƒqSW|itttt|ƒƒ|ittttt|ƒƒƒ|ittttt|ƒƒƒq4WdS(
Ni
iièiiiÐi˜i(ii(R7RgRIRR R¢R§R¨RœR>ttgtRKR	RLRRRRvR R!R¤R¥R¬R¦(RR´R>RIRK((RRyus4

)"cCs0x)tdƒtdƒtdƒd	tdddƒfD]ô}x‹ttttttfD]q}g}x=||ƒD]/}|ot|ƒoqln|i
|ƒqlW|ittt||ƒƒƒ|ƒqSW|itttt|ƒƒ|ittttt|ƒƒƒ|ittttt|ƒƒƒq4WdS(
Ni
iièiiiÐi˜i(ii(R7RgRIRR R¢R§R¨RœR>R´RKR
RLRRRRzR R!R¤R¥R¬R¦(RR´R>RIRK((RR{s4
)"cCsx
ddtdƒd
tdddƒfD]ä}x|ttttttfD]b}t
||ƒƒ\}}|it|ƒt||ƒƒƒ|it|ƒt||ƒƒƒqGW|itt
t|ƒƒ|ittt
t|ƒƒd	ƒ|ittt
t|ƒƒd	ƒq(WdS(NRªRièR«f1.2iÐi˜ii(sdof1.2(R7RgRIRR R¢R§R¨RœR>Rtit1tit2RRRR R!R¤R¥R¬R¦(RR>RIR¶Rµ((RR’s("&#(RRR"R.RVRXRZRfRnRsRqRyR{R’(((RR©$s															tLengthTransparencycBstZd„ZRS(NcCs<|ittddƒƒdƒ|itttdƒƒdS(Ni2(RRRRRhRHR R!(R((RRi™s(RRRi(((RR·—stRegressionTestscBstZd„Zd„ZRS(NcsKd„}‡d†}g‰|d	|d
ƒttƒ}|iˆ|ƒdS(Ncsjdg‡‡d†}t|ƒ}t|ƒ|dd+t||ƒ}t|gt|ƒŒ‰ˆi
ƒdS(Nics#|o|2ˆˆiƒƒn|S(N(tfirstR“tzRR†(R†R¹(R“Rº(RR>¦s(R>Rttuple2titemsttuple1RjtgenR[RRRºR(R½R“R»R>R¼RºR¾((R“RºRt
mutatingtuple¢scs|attƒˆ(dS(N(RxtTRR¹(Rx(R¹(RR“±siiiiii(iii(iii(R¿R“R¹RRÀtsecondRR(RR“RÁR¿R¹((R¹Rttest_sf_793826Ÿs	c	sÖ‡d†}‡d†}g‰|ittt|ƒ|tƒƒƒ|i	ˆddgƒg‰|ittt|ƒ|t
ƒƒƒ|i	ˆddgƒg‰|ittt|ƒƒƒ|i	ˆddgƒdS(Nc#s5ˆidƒdVˆidƒt‚ˆidƒdS(Niii(thistRLtAssertionError((RÃ(Rtgen1Às


c#s3ˆidƒdVˆidƒ|o
t‚ndS(Niii(RÃRLRR(R(RÃ(Rtgen2Çs


ii(RÅRÆRÃRR RÄRRRšRRTR-(RRÆRÅRÃ((RÃRttest_sf_950057¼s%%(RRRÂRÇ(((RR¸s	s™ Doctest for examples in the library reference: libitertools.tex


>>> amounts = [120.15, 764.05, 823.14]
>>> for checknum, amount in izip(count(1200), amounts):
...     print 'Check %d is for $%.2f' % (checknum, amount)
...
Check 1200 is for $120.15
Check 1201 is for $764.05
Check 1202 is for $823.14

>>> import operator
>>> for cube in imap(operator.pow, xrange(1,4), repeat(3)):
...    print cube
...
1
8
27

>>> reportlines = ['EuroPython', 'Roster', '', 'alex', '', 'laura', '', 'martin', '', 'walter', '', 'samuele']
>>> for name in islice(reportlines, 3, None, 2):
...    print name.title()
...
Alex
Laura
Martin
Walter
Samuele

>>> from operator import itemgetter
>>> d = dict(a=1, b=2, c=1, d=2, e=1, f=2, g=3)
>>> di = sorted(sorted(d.iteritems()), key=itemgetter(1))
>>> for k, g in groupby(di, itemgetter(1)):
...     print k, map(itemgetter(0), g)
...
1 ['a', 'c', 'e']
2 ['b', 'd', 'f']
3 ['g']

# Find runs of consecutive numbers using groupby.  The key to the solution
# is differencing with a range so that consecutive numbers all appear in
# same group.
>>> data = [ 1,  4,5,6, 10, 15,16,17,18, 22, 25,26,27,28]
>>> for k, g in groupby(enumerate(data), lambda (i,x):i-x):
...     print map(operator.itemgetter(1), g)
...
[1]
[4, 5, 6]
[10]
[15, 16, 17, 18]
[22]
[25, 26, 27, 28]

>>> def take(n, seq):
...     return list(islice(seq, n))

>>> def enumerate(iterable):
...     return izip(count(), iterable)

>>> def tabulate(function):
...     "Return function(0), function(1), ..."
...     return imap(function, count())

>>> def iteritems(mapping):
...     return izip(mapping.iterkeys(), mapping.itervalues())

>>> def nth(iterable, n):
...     "Returns the nth item"
...     return list(islice(iterable, n, n+1))

>>> def all(seq, pred=bool):
...     "Returns True if pred(x) is True for every element in the iterable"
...     for elem in ifilterfalse(pred, seq):
...         return False
...     return True

>>> def any(seq, pred=bool):
...     "Returns True if pred(x) is True for at least one element in the iterable"
...     for elem in ifilter(pred, seq):
...         return True
...     return False

>>> def no(seq, pred=bool):
...     "Returns True if pred(x) is False for every element in the iterable"
...     for elem in ifilter(pred, seq):
...         return False
...     return True

>>> def quantify(seq, pred=bool):
...     "Count how many times the predicate is True in the sequence"
...     return sum(imap(pred, seq))

>>> def padnone(seq):
...     "Returns the sequence elements and then returns None indefinitely"
...     return chain(seq, repeat(None))

>>> def ncycles(seq, n):
...     "Returns the sequence elements n times"
...     return chain(*repeat(seq, n))

>>> def dotproduct(vec1, vec2):
...     return sum(imap(operator.mul, vec1, vec2))

>>> def flatten(listOfLists):
...     return list(chain(*listOfLists))

>>> def repeatfunc(func, times=None, *args):
...     "Repeat calls to func with specified arguments."
...     "   Example:  repeatfunc(random.random)"
...     if times is None:
...         return starmap(func, repeat(args))
...     else:
...         return starmap(func, repeat(args, times))

>>> def pairwise(iterable):
...     "s -> (s0,s1), (s1,s2), (s2, s3), ..."
...     a, b = tee(iterable)
...     try:
...         b.next()
...     except StopIteration:
...         pass
...     return izip(a, b)

This is not part of the examples but it tests to make sure the definitions
perform as purported.

>>> take(10, count())
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> list(enumerate('abc'))
[(0, 'a'), (1, 'b'), (2, 'c')]

>>> list(islice(tabulate(lambda x: 2*x), 4))
[0, 2, 4, 6]

>>> nth('abcde', 3)
['d']

>>> all([2, 4, 6, 8], lambda x: x%2==0)
True

>>> all([2, 3, 6, 8], lambda x: x%2==0)
False

>>> any([2, 4, 6, 8], lambda x: x%2==0)
True

>>> any([1, 3, 5, 9], lambda x: x%2==0,)
False

>>> no([1, 3, 5, 9], lambda x: x%2==0)
True

>>> no([1, 2, 5, 9], lambda x: x%2==0)
False

>>> quantify(xrange(99), lambda x: x%2==0)
50

>>> a = [[1, 2, 3], [4, 5, 6]]
>>> flatten(a)
[1, 2, 3, 4, 5, 6]

>>> list(repeatfunc(pow, 5, 2, 3))
[8, 8, 8, 8, 8]

>>> import random
>>> take(5, imap(int, repeatfunc(random.random)))
[0, 0, 0, 0, 0]

>>> list(pairwise('abcd'))
[('a', 'b'), ('b', 'c'), ('c', 'd')]

>>> list(pairwise([]))
[]

>>> list(pairwise('a'))
[]

>>> list(islice(padnone('abc'), 0, 6))
['a', 'b', 'c', None, None, None]

>>> list(ncycles('abc', 3))
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']

>>> dotproduct([1,2,3], [4,5,6])
32

t
libreftestcCs·tttttf}ti|Œ|ost	t
dƒocdk}dgd}xAtt|ƒƒD]-}ti|Œ|iƒt
iƒ||<qbW|GHntit
it|ƒdS(Ntgettotalrefcounti(RR©R–R¸R·ttest_classesttest_supporttrun_unittesttverbosethasattrR(tgcRHtcountsRgRRRtcollectRÉtrun_doctesttmodulesR(RÍRRÏRÊRÐ((Rt	test_mainšs
	


	t__main__RÍ(%tunittestttestRËt	itertoolstweakrefRŽR(RkR‚RRRR	R
RRtTestCaseRR–RœRR R¢R¤R¥R¦R§R¨R©R·R¸RÈt__test__RHRÔRRT(RËRÈRÖR‚RkR¸R·RR RR	R–RÔR
R¦RRR¨R¥R(R©R§RœRÛRŽRRR¤RR¢((Rt?sB	

									ÿx7	
	
		s=¾


Anon7 - 2021